Fórum témák
» Több friss téma |
Most éppen ezen "makettezek"...
Ez egy PLC lesz jó sok bemenettel, és természetesen 24 kimenettel. A panelon két PIC 16f877A lesz, az egyik csak a kimeneteket kezeli, Uarton kapja a kimenet kapcsolás "állapotát" 3 byte-n RTC is van benne (I2C), ha kell (chip: 5c372a), és LCD kijelzőt is rá lehet dugni szükség esetén. A fizikai kapcsolatok sorkapcsosak... A kimenet Smd pnp tranzisztoros. minden ki és bemenet optcsatolós védettségű, és ledek jelzik az állapotokat. A PIC-eket akár a helyükön is lehet programozni... Kapcsolási rajzot nem csináltam, csak igy fejből rajzolgattam, azt hiszem, magáért beszél... Ha valakinek pont ilyen kell, vagy hasonló, itt van...
Sprint L 4.0 val...
Még nem ültettem be, felelőséget nem vállalok... Most készül a nyáklemez...
Szia!
Ez anno nekem működött a három bemenetre kell 10k-s ellenállások ez egy LCD-re írja ki a számot. Ennek volt egy kódzár része is ha kell azt is előkeresem.
Jól értem, hogy az examp3.pic program 4db 7 szegmenses led kijelzőt vezérel?
Ha igen akkor a "TABLE INFO"-ba honnan tudom, vagy hogyan tudom meghatározni milyen értékek legyenek, hogy 0-9 ig írja az értékeket. Másik kérdés. Ezt kombinálva a fordulatszám mérővel, jó lehet a kijelzés? (Vagyis fordulatszám értékeket leosztani 1esekre, 10esekre ...stb. és azt kijeleztetni) (Sajnos nem kapok Olyan 2 soros 20 karakteres LCD kijelzőt amiben a karakterek magassága 10-15 mm.) Még 1 kérdés. Egy ismerős nem szám formában, hanem led sorral szeretné kijeleztetni a fordulatszámot. 100 fordulatonként 1 lapos lednek kellene kigyulladni 0-8000 ig(bár 6000nél tovább nem forog a motor) Ezzel a programmal meg oldható? Ha igen akkor kérhetek súgást, hogy merre induljak?
Válasz első részre:
Tab formátuma a hétszemens kijelző egy ledje a 8bítes adat egy bitje pl: 00000110 ez mondjuk lehet adott esetben az egyes kódja ez attól is függ melyik irányból értelmezed. Tehát a táblázatba a kigyujtandó pálcikák sorrendjét kell beírnod minden számra (ez egy maszk valójában) akár lehet betü is csak a 7 pálcika értelmesen kiadja Pl: A vagy L stb... nem akarlak megkeverni. ha 0-9-ig számolsz, akkor természetesen a számok "képét" kell előállítanod". Az hogy közös anódos , vagy közös katódos természetesen meghatározza a kimenet alapértelmezését (normál, vagy invertált) ugyanúgy a dekád vezérléseknél is... A kérdésedre akkor a válasz: annak a táblázatba irandó értéknek meg kell felelni a a pálcikák "szimbolikus" értékének 0-255 közé eső szám lesz természetesen. A 8 bit bináris kiterített értékén az egyik végén természetesen mindig nulla lesz , mivel csak 7 bitet használunk. A tizedes pontot más logika kapcsolja...
Válasz a 2. kérdésre:
erre a feladatra pl. az analóg bemenetet tudod felhasználni, ha mindenképpen PIC-el akarod. Legalább 60db led kell a 100-as felbontáshoz (6000 1/min-hoz) Továbbá 2db pic16f877A kontroller... Az első PIC veszi az analóg jelet, ami úgy van a fordulattal arányosan konvertálva, hogy beleférjen a 0-5V-ba. Az első pic30 kimenetet fog kapcsolni, a további 30ledet a másik pic tudja kapcsolni. Az átvitelt az UART-on lehet megoldani egy szál drót kapcsolattal (tx -> rx), a 30 leden tuli turcsoldult értékek adatait küldjük át. Ezt viszonylag egyszerű progi 10-15 perc alatt meg lehet írni... Az áramkör megépítése az elsődleges... Ha gondolod feldobom majd a progit hozzá... Az analóg jelet a néhai Uaa180-as Ic-vel megépített led soros fordulatszám mérőből tudod kimásolni, ez valójában egy 555-s Ic és néhány alkatrész a tövében... (valószínű itt a fórumon is fenn van néhány helyen)
Üdv!
Még mindíg a Mátrix billentyűzetem megoldásán szenvedek. Az oszlopok (F-E-D) Kapcsolgatása nem jött be. Most azzal próbálkozom, hogy az első oszlop 1V-os jelet, a 2.oszlop 3V-os jelet, a 3.oszlop 5V ot kap. Analog bemenetekkel különböztetem meg őket. A következő a program. A kérdésem: Mennie kellene? F-E-D ahogy mondtam ráadom a különböző szintű feszültségeket, és a K-J-H-G a sorok. Ha az 1 V jön vissza a K soron akkor nyomtam le az 1-es gombot.És igy tovább
Üdv!
877-es PIC-nél: ADC0=RA.0 ADC1=RA.1 ADC2=RA.2 ADC3=RA.3 ADC4=RA.5 ADC5=RE.0 ADC6=RE.1 ADC7=RE.2 Jól írtam? Ha a 4-es analog bemenetet szeretném használni, ugyan úgy ADC-t kell írnom? Az ADC = analog digital concerter? a számozás, pedig az adott PIC analog bemeneteinek a száma?
Igen, ha analógot használsz, akkor azt sorszámmal kell jelölni a programban.
ADC4...
Rendben! Tehát ha a ADC4 ( 4-es analog bemenet)-et szereteném használni akkor az az RA.5-ös láb lesz.
Ezt szerettem volna csak tudni. Nekem valaki régebben azt mondta, hogy az ADC-ből a C a portot jelenti. Szóval ha azt irom, hogy ADC1 akkor RC.1. De látom, hogy az nem egy analog bemenet. Ezért keveredtem meg, hogy akkor most hogy is van . Az adott PIC analog bemeneteire vonatkozik.
Egy kezdő kérdés: van arra valami mód, hogy a Parsic átszámozza a kapcsolatokat? A sok javítgatás közben észrevettem, hogy a foltozgatásoknál előfordul, hogy ugyanaz a neve a kapu előtti szakasznak, mint a kapu utáninak.
A másik dolog: ha bemenetként használom pl az RB1-RB3 lábakat, amire optókat tettem, akkor azt fel kell húznom ellenállással tápra, vagy elég simán rákötnöm az optó kollektorát? (alacsony szintre kapcsoltatom)
Az RB.7-nél látszik, miről is beszéltem az átszámozásnál.
Igen erre figyelni kell ! A progi nem tudja melyik kötést akarod kivezetni . ha egyszer elneveztél egy "lábat"
csak akkor nevezi át ha egy másikat kötsz hozzá . Viszont néha emiatt vész el egy egy kivezetés !
Szia,jobb egér rá katt csatlakozásra és oda van irva.Automatikus számozás,bit csatlakozás :< . > enter byte csatlakozás :név törlése
Köszi!
Arra nincs mód, hogy megnézze, nem használok-e véletlenül egyező neveket különböző kötéscsoportoknál? Egyáltalán van jelentősége, ha az S jelűeknél esetleg van egyezés? Az ellenállásos kérdésre nem tudtok valamit mondani? Igényli a tápra felhúzást? Láttam az ic beállításoknál olyat, hogy a B portokat húzza-e magasra. Ez nem az, ami nekem kell?
Én biztos hogy külső ellenállással húznám fel . ha egy
lábról van szó . Ha a belső felhúzást választod , az egész BPORT fel lesz húzva !
A kimeneti rész is jó így, ahogy rajzoltam?
Mennyire lehet terhelni a kimeneteit?
Ha jól emlékszem 20mA ig terhelhető a kimenet .
A portokat nem ellenörzi de a összekötéseknek nem ad ugyanolyan számozást,csak a portoknál figyelj rá
Max.25mA kimentenként de itt a 628 adatlapjaBővebben: Link
Akkor a így használhatom elvileg a ki és bemeneteket? (Áramok jók-e, esetleg mik a bevált értékek?)
Az mitől lehet, hogy az egyik bemenetem neve megváltozott? RB.3-nak definiáltam, de némi rajzolgatás után átírta RB.6-ra, ami ráadásul egy kimenet... (nem a bemenetnél módosítottam, így csak utólag tűnt fel) Aztán a próbánál furán működött a dolog, ott tűnt fel.
Az mitől lehet, hogy az alábbi kapcsolás szépen működik a szimulációban, de a valóságban valamiért nem működik a reset funkciója?
Elvileg ZR2 ad egy impulzust az idő leteltekor, majd rá 4s-ra RS3 ágon keresztül ismét. Ezek mintha ott sem lennének... A riasztásig minden működik pontosan, de a sziréna bekapcsolása után ez a szakasz nem csinál semmit. (nyomógombos leállításra működik természetesen)
Módosítottam a reset részt, de ennél meg reklamál a fordításnál. Mit kell még megadni a ZV1-nél?
mod: átnéztem pár példaprogramot és rájöttem közben, földre kellett tenni az irányt meghatározó lábat. Az újraindítás viszont nem működik így sem. Valakinek ötlet?
Nos, közben megoldódott a dolog.
Ennyi módosítás kellett hozzá, és már megy is. A kutya ott volt elásva, hogy a bemenet alapból magasra volt húzva, ami az OR kapu kimenetét magasan tartotta folyamatosan. Így hiába jött az impulzus a másik ágról, a ONE_SHOT nem csinált semmit utána.
Ha ilyen problémám van, én csak kitörlöm az adott kaput, és újra bekötöm. Ilyenkor helyrejön a hiba.
A másik kérdésedre a válasz: Szerintem nem kell felkötnöd tápra. üdv: Dávid
Tudna valaki adni valami olvasmányt a parsicról, illetve picről?
A program helpjében gyakorlatilag minden segítség meg van...német angol olasz nyelven.
A topic elején kb 20. oldalig én is sokat irtam róla... A pic-ről meg az adatlapjáról, aztán a Mikrovezérlők alkalmazástecnikája könyvből, ezen főrum jőnéhány topicjából... Kezdésnek: egy olyan eszközt képzelj el, amivel információt dolgozunk fel. Ez leginkább a bemenetként használt "lábakon" keresztül kapcsojuk, a végeredményt meg a kimenetként használt "lábakon" kapjuk... Az ehhez használt programot a felhasználó írja meg valamilyen fejlesztő környezetben "pl a PARSIC"+mplab és beletölti a mikrokontrollerbe (égetés)... utána e szerint fog müködni... |
Bejelentkezés
Hirdetés |