Fórum témák

» Több friss téma
Fórum » PIC-es ötleteket, tanácsokat várok
Lapozás: OK   3 / 3
(#) aty válasza Tomee hozzászólására (») Márc 3, 2006 /
 
Hello !!!

A munkahelyemen PIC-es keszulekekben 74573-as 8-bit D tarolot hasznalunk. Igaz minimum 9 labat kell a PIC fele kotni.
Regebben 6x7 szegmenst LED-ekbol keszult kijelzot ( kb 1000 LED 3mm ) 4021-es SHIFT regiszterrel oldottam meg mindossze 2 vezetekkel ( + tap ).
Igy 48-bites kimeno portot kaptam.
De gondolkodom IIC 8-bites kibovito port hasznalatarol is PCF8573 -PCF8574-es lenne.
(#) Tomee válasza aty hozzászólására (») Márc 3, 2006 /
 
Köszi.
Én is valami ilyesmin gondolkodtam.
Ez lesz a megoldás kulcsa.
(#) mspike válasza Tomee hozzászólására (») Márc 3, 2006 /
 
Egy Konyai féle valami, szentem sűrgőssen töltse le akit izgat, mert ez se lesz fenn soká..

Saját felelőségre
(#) Lucifer válasza aty hozzászólására (») Júl 21, 2006 /
 
Sziasztok!
Nekem is hasonló problémám van:
Egy darts darts gép kijelzésével akadt gondom.
Van ún. krikett módja. Van 8 játékos ezek mindegyikéhez tartozik egy 22 oszlopos és 3 soros ledes kijelző.
Ez összesen 528 led .
Ezt kellene nekem minél kevesebb i/o lábból, minél egyszerűbben hajtanom. Annyi könnyebbség van a dologban, hogy az oszlopokat soronként lehet feltölteni.
A meghajtani kívánt kimenet mennyisége miatt gondoltam a soros - páhuzamos átalakításra.
Ismerek egy shift regiszteres kapcsolás PC-hez:
Ezt itt.
Nos gondolom ez úgy működik, hogy küldöm a soros adatot, és minden új clock jelnél átugrik a következő lábra. Ha megtelt meg bekapcsolja a bejövő adatjelet
a Qh lábra??? Ha nem kérlek benneteket javítsatok ki!
(Nem értek hozzá.)
Ha ez így van akkor ebből a kapcsolásból lehetne hosszabb láncot építeni??

Másik kérdés: ezek kimenetén megmarad az adott állapoton vagy kell hozzájuk egy tároló is??

Válaszaitokat előre is köszönöm!
(#) Frankye válasza Lucifer hozzászólására (») Júl 21, 2006 /
 
Ez szerintem multiplexeléssel oldható meg, minél kevesebb I/O felhasználással. Ajánlom figyelmedbe mspike előadásának anyagát, a példák közt van egy ilyen.
(#) Lucifer válasza Frankye hozzászólására (») Júl 21, 2006 /
 
Szia!
Multiplexeléssel?
Hogyan?
Az előadás anyagát most rágom. (Ha jól láttam akkor a 6. példa foglalkozik ezzel.) De ott egy bemeneteket kezelő példa van ha jól sejtem. Arra meg már kiképeztem magam. A háló kezelése már meg van a segítségetekkel. Köszönet érte ezúton is.
Nekem viszont kimenetre kellene. És minden ledet külön kellene vezérelni. A kérdés számomra továbbra is nyitott.
(#) Frankye válasza Lucifer hozzászólására (») Júl 22, 2006 /
 
Az igazság az, hogy idő hiányában mspike az előadáson sajna nem tudott elmondani mindent, amit szeretett volna, így ezt sem. Még én is most kezdem csak tanulgatni a dolgokat (PIC), de eszembe ötlött, hogy ez olyan multiplexelésés dolog, és hogy ott láttam ilyet, azért javasoltam. Igazad van, nem néztem, hogy az bemenetekre van, Te pedig kimenetre szeretnéd, sorry!
(#) Gory válasza Lucifer hozzászólására (») Júl 22, 2006 /
 
Szia!

Valószinűleg egy alkatrész temető lesz amit építesz Szerintem minden oszlophoz kell egy úgynevezett latch, mivel gondolom ha egy ledet kigyújtassz az egyik oslopban az utána végig égve marad. Ez így 22*8 db 3vagy4 bites latch. Kell minden játékoshoz 3 db 22 kimenetű multiplexer (valószinűleg egy 8 meg egy 16 kimenetűből összerakva) A 3 multiplexer bemenetére pedig egy-egy I/O láb a mikrokontrollertől. Plusz a címzéshez megfelelő lábak. Meg kell egy multiplexer a latch-ek vezérléséhez is, hogy mikor íródjon be az adat.
Csináltam egy blokkvázlatot. Persze biztos van valami cél IC ilyesmire. Mert ez így elég drága mulatság lenne.
Esetleg ha 8 vagy 12 vagy több bites latch létezik, akkor a multiplexerek kimeneteinek száma, és a latch-ek száma jóval kevesebb lehet, ha több led oszlopot összefogsz egy tárolóval.

blokk.JPG
    
(#) Lucifer válasza Gory hozzászólására (») Júl 22, 2006 /
 
Szia!
A válaszodért végtelenül hálás vagyok!
Szóval akkor elkezdtem gondolkozni az ügyön.
Van a 74*138-as ez ugye 4 bitről tud 8 + nem ég semmi stílusú vezérlést csinálni. Ezeket soronként raknám be. Ebből kellene 22 darab.
Ezek közül válogatnék egy valamilyen alkatrésszel. (??léptetőregiszterrel??). Szóval, hogy csak egyszerre csak eggyel foglalkozzak. Aztán a ledek mögé kellene egy tároló.
Meg még egy olyan alkatrész amivel a sorok közt választok.
(??Léptetőregiszter??)

Ez ha jó a feltvésem, és jól számoltam akkor:

22 db 74*138
22*8 latch
+3 sorválasztó
+3 darab 8 bites léptető.

és rengeteg I/O.
na de majd gondolkodok még rajta.
(#) Lucifer válasza Lucifer hozzászólására (») Júl 22, 2006 /
 
Sziasztok!
Most törtem megint a fejemet. Csak kötném az ebet a karóhoz, azzal a 74HC595-ös megoldással. Kellene belőle 66 darab. retnél 72 Ft az durván 5000 Ft. Viszont csak 2 I/O lábat használok, és kényelmesen megoldható az oshonsoftos BASIC seroutos direktívájával. Kérdés az, hogy hosszabb láncban működik-e? Majd veszek 3 darabot és kipróbálom.
Az 528 LED az durván fél kilobit. Ha jól tudom 192 Kb-el lehet tolni maximum a soros átvitelt Basicből. Az azt jelenti, hoy ~3 másodperc alatt töltené fel a ledeket.
(#) Gory válasza Lucifer hozzászólására (») Júl 22, 2006 /
 
Az I/O lábakkal nem érdemes spórolni. Raksz bele egy ATMEGA16-ot, aztán mindjárt van vagy 25 I/O amit tudsz használni. Ráadásul 1000Ft-ba se kerül.
(#) erobi82 válasza Gory hozzászólására (») Júl 22, 2006 /
 
Vajon, a mindenki által jól ismert a képen is látható telefon kézibeszélő kijelzője alkalmas- e PIC-es vagy egyéb alkalmazásokra?Próbálkozott e már valaki vele?Vagy nem érdemes gyűjtögetni, kuka az egész??
Aki nem ismerné: Motorola Associate2000

kézibesz.JPG
    
(#) Tomee válasza Lucifer hozzászólására (») Júl 23, 2006 /
 
Én így gondoltam.
8 adat vonal és 3 címző vonal szükséges hozzá.
Így 11db I/O láb lenne elhasználva.
Úgy mükődne, hogy a 3 sor meghajtóval beálítom az 1. játékos (1. oszlop) ledjeit és az oszlop meghajtó adott kimenetét 0 szintre kapcsolnám. (Ha jól néztem az adatlapát akkor 35mA-t tud adni vagy nyelni a kimenet.) Ekkor a két pont találkozásánál lévő ledek világítanának. (Én a rajzomon csak egy ellenállással helyetesítettem a ledet.)
Aztán a következeő oszlop ledjeit is bekapcsolnán egy pillanatra.
Minden oszlop egy kicsi ideig világítana.

1_resize.jpg
    
(#) Lucifer válasza Tomee hozzászólására (») Júl 23, 2006 /
 
Szia Tomee!
Válaszodért végtelenül hálás vagyok!
Úgy érzem ez lesz a jó megoldás. Most 16F877-el dogozom, és már kevés I/O lábam maradt, azért akartam takarékoskodni. De viszont találtam I2C-s perifériabővítőt
(MCP23016) így a gombokat, kijelzőet, egyéb ledeket, igencsak száműzöm arra. Ha majd nem értek valamit, szólok!
Mégegyszer nagyon köszönöm!
(#) Tomee válasza Lucifer hozzászólására (») Júl 23, 2006 /
 
Ezzel a megoldással elvileg nagyon sok kimenet esetleg bemenet alakítható ki.
Az ic-k pontos mükődését meg elötte simulátorban ellenörizd le mert a 3/8 DMX illetve a Bus meghajtó bekötésében nem vagyok biztos.
(#) Lucifer válasza Tomee hozzászólására (») Aug 3, 2006 /
 
Sziasztok!
Na kiderült hülyeséget mondtam. Nem 22*3 tömb kell csak 7*3-as.
Tomee: a bus meghajtó (245) bekötésevel nincs gond, olyat már használtam.
Más: nincs a 74574 helyett használhatok 573-at??
(#) Tomee válasza Lucifer hozzászólására (») Aug 3, 2006 /
 
Ja bocs. Oda 74xx573 kellett volna.
Az 574 az évezérelt. Talán az is jó lett volna, de szerintem nem bagyon akarsz az élekkel vesződni...
Egyébként én még sose csináltam ezt meg ekkorában.
Eddig csak 2 ilyen ic-ből csináltam SRAM-nak cim buszt.
(#) Lucifer válasza Tomee hozzászólására (») Aug 3, 2006 /
 
Szia!
Na ezt megszívtam akkor. Nem láttam aa retben csak 573-at. Mondom rendelek azt, a latch kimenet jól jöhet.
Telefonálnak, nincs 573. Na mondom nem gond jó a 574. Az persze volt.

A latch kimenet ugye azt jelenti, hogy ha megtöltöm adattat, akkor úgy marad a kimenet.
Viszont az élvezérelt dologhoz nem értek. Tudnál róla írni pár szót?
(#) Tomee válasza Lucifer hozzászólására (») Aug 3, 2006 /
 
Ja a latch az azt jelenti.
Az élvezérelt Latch meg annyit akar szerintem, hogy az adat csak a Latch enable felfutó élénél irodik be és jelenik meg a kimeneten ha az kimenet engedélyezve van.
Ha pl. a latch enable engedélyezné az adat beirást és megváltozik a bemenet akkor az azonnal a kimeneten is megjelenne, de ha a latch eneble élvezérelt akkor csak a latch enable él (felfutó, lefutó) megfelelő álapotánál iródik be az adat. Tehát ha magas a latch enable akkor sem történik semmi, ha meg alacsony akkor sem történik semmi. Csak a felfutó vagy lefutó él hatására csinálja a dolgát jelen esetben csak ekkor irodik be az adat.
Elösszőr kirakod az adatot a buszra majd csinálsz egy Latch enble-t. Fordított esetben nem mükődne.
(#) Lucifer válasza Tomee hozzászólására (») Aug 3, 2006 /
 
Kösz a gyors, kimerítő választ!
Nem is olyan bonyolult a dolog. Csak így elvész még egy I/O láb. Mindegy, majdcsak megoldom valahogy.
(#) Tomee válasza Lucifer hozzászólására (») Aug 3, 2006 /
 
nem vész el.
A latch enablet így is kellet volna használnod.
Ott van a 74hc238 cim generáló aminek egyszer kiadod a 74hc574 cimét majd vissza veszed és az adat máris a kimeneten van. Elösszőr dugdosos panelon rakd össze, próbáld ki és csak után a csinálj belőle nyákot. Szerintem vezérlés (pic progi) szempontjából nincs különbség.
Amikor kiadod a címet akkor már a buszon kell lennie az adatnak. Mert utána már nem tudsz bele irni.
Talán így kényelmesebb mert kirakod az adatot, majd a címet és utána a következő adatot, következő cimet.
Mert a következő adat nem fogja tudni az előbb beirt adatot felülirni mert a latch eneble az élvezérelt.
Na ezen még én sem gondolkodtam el... Lehet, hogy a következő cuccomat már ezen irány elvek alapján tervezem...
(#) Norberto válasza Tomee hozzászólására (») Okt 19, 2006 /
 
Sziasztok!

Lenne egy nagy kérdésem a jobban hozzáértőkhöz!

Ezen a linken található egy LCF mérő forráskódja...

A probléma az vele, hogy le van védve a program, méghozzá oly módon, hogy észreveszi, ha valaki módosít benne akár egy betűt is (így magyarosítani sem lehet sajna :no: )...én nem tudom, hogy ezt hogyan és miként valósíthatták meg...

Erre várom az ötleteket, hogy ezt hogyan s miként valósíthatta meg a programozó...
(#) Balázs válasza Norberto hozzászólására (») Okt 19, 2006 /
 
Biztos ez?! Mert nekem elég hihetetlennek tűnik... Próbáltad már?
(#) potyo válasza Balázs hozzászólására (») Okt 19, 2006 /
 
Nem nagy mutatvány egy ilyen, simán lehetne benne. Pl. induláskor, vagy menet közben valamikor összeadja a programmemóriában szereplő bájtokat, mint adatokat. Az átvitelt figyelmen kívül hagyva a végén kap egy bájtot, amit összehasonlít egy már beégetett bájttal. Ha egyezik, akkor a program rendben van, ellenkező esetben módosítás történt benne.

Viszont nem látok semmi erre utaló jelet. Az EECON1 regiszter végig az adatmemóriára mutat.

Miből veszed észre, hogy a program rájött a módosításra? Kiír valamit a kijelzőre?
Következő: »»   3 / 3
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem