Fórum témák
» Több friss téma |
Fórum » LED mátrixos kijelző
Témaindító: Satterhand, idő: Aug 20, 2005
Témakörök:
Érdemes _EZT_ a vezérlési elvet is átgondolni. ( Akár RGB-s LED-mátrixra is. )
Ilyesmire gondoltam én is. Csak mikor meg látam az rgb ledet, hogy 4lábbal rendelkezik kicsit meg ijedtem még nem dolgoztam ilyennel.
Sziasztok
Én is ilyen mátrixépítésben vagyok, és lenne egy kérdésem . Szóljatok ha bugyutaság Szóval alapötlet hogy a sor kiválasztáshoz egy uController 3lábát használom, 3to8 decoder segítségével, majd az oszlopoknak a kontroller SPI kimenetén keresztül adnám az adatokat, ehhez egy szimpla 74hct595-re gondoltam szerintem megteszi. Ugye ez lenne egy 8x8 as mátrix blokk. Namost szeretnék max16 ilyen blokkot egymás mögé tenni, és jön a kérdés legegyszerűbben hogy tudom kiválasztani azt hogy az SPI engedélyezőlába éppen a soron következő blokknak adjon elsőbbséget? 16 szál vezetéket nem szeretnék húzni a kontrollertől Elég puritán ötletként az jött hogy mindegyik alappanelra tegyek még egy 16ból 1es decodert, így minden panelra pluszban csak 4 láb jön a vezérlőtől, ami ugye bináris 4 bit, ebből csak az az 1 kimenő lába aktív amit a bitek meghatároznak, és hogy szimplán jumperes megoldással majd én a 2. panelon berakom a "2"es jumpert, a 3. panelon a "3"as jumpert stb.. Ez elég komolytalan szerintem de hát egyenlőre nincs jobb ötletem. Légyszives segítsetek valami ötlettel. Köszönöm.
Itt láthatsz egy olcsó (8$) gyakorlati megvalósítást (a pdf doksiban kapcsolási rajz is van) 4x4 darab 8x8-as LED mátrix meghajtásra.
Először is köszi, másodszor nem kényelmesen venni szeretnék , hanem az elvet megtanulva , felfogva, saját programot ráírva sajátot készíteni. Ehhez kértem segítséget. Amit ajánlottál kapcsolásban meg ha jól látom egy LCD modul vezérlő IC-je van amit standard LCD program parancsokkal lehetne akár vezérelni. Ez majd esetleg akkor jön szóba ha az alapokkal rendben vagyok
Esetleg I2C sínnel a soros léptetőregiszter helyett egy PCF8574 .Sajna ezt csak 8-ig lehet címezni.
Tudom verébre ágyúval ,de költségben szerintem nem tragikus ,minden 8*8 panelra egy pic/avr (3-400 ft),ami elintézi az egész kocka minden nyűgjét ,ezeket meg úgy címzed ahogy akarod.Szerintem találsz olyat aminek 16 IO portja van ,ezekre már csak a tranzisztorokat kell rákötni,nem kell semmi más hozzá. Az alapnak pedig csak a képet kell neki elküldeni.
Igen , de nem látom át ez miért lenne előnyösebb!? Ugye a cél az lenne hogy a 8x8as mátrix blokk nyákok teljesen azonosak legyenek , csak 1 vezérlő nyák lesz különböző és a többi tényleg legyen azonos.
Viszont azóta úgyfest rábeszélem magam hogy célszerűbb sorba felfűzni ezeket a regisztereket és úgy ráküldeni az SPI -on keresztül az adatot, majd kézenfogva továbbadják egymásnak. Ehhez a megoldáshoz meg is lenne az elképzelés a megvalósításra, de a programozásnál már elméleti falba ütköztem. Az a gyenge pontom, egyenlőre nincs meg hogy tároljam vagy hívjam elő a megfelelő pixeladatokat.. Majd a programozásához egy kis lökést tudtok adni ? egy mini mintaprogi esetleg C nyelv amit tolerál a szervezetem
Nah igen ez a 2es számú ötlet. Csak úgy szeretném hogy minden irányba suhanó szöveg is megjelenítődjön akár. Ezt meg nem tudtam elképzelni programban...
Attól, hogy egy RGB LED-nek 4 lába van, még kézben tartható a vezérlése. Lásd: _RGB_LED-mátrix_
A szintenkénti PIC kap egy szinkronizáló órajelet meg megkapja a következő kép tartalmát.Ezt saját hatáskörben a megfelelő pillanatban elkezdi kirakni.A központi egység meg ráér számolgatni hogy mi suhanjon meg merre.
Ahham.. Elkezdem megemészteni, meg átgondolni. Szerinted "ólcsóbb" vagy egyszerűbb megoldás mint a sorbafűzött shiftregiszteres verzió? Ebbe vegyük bele a programozás részét is amiben van még mit fejlődni..
Illetve ha esetleg nagyon sokat fűzök fel akkor is lesz elég gyors az egész a folyamatos kijelzéshez ?
köszi majd ki próbálom
vettem egy darabot és kiprobálom hogyan lehet használni és akkor okosabb leszek és akkor már semmi lesz meg csinálni a mátrixot
Igazából ha szintenként van egy PIC az elrendezi a mátrixolás összes nyűgjét.(főleg ha a kijelzendő komplett futó alakzatot valamit a futási sebességet egyben elküldöd neki.Ekkor a szintenkénti pic csak a szinkronjelre eggyel arrébb lépteti (vagy nem ,a sebességtől függően) a szintjéhez tartozó képet.Ezt nevetve meg tudja csinálni.Sőt a kiírás közben még arra is ráérhet hogy a következő ábrát a pufferbe tegye.A koordináló picnek meg szinte csak annyi dolga hogy a szinkronizáló jelet szolgáltassa,valamint az ábrával ellássa a szolgákat.Ha viszonylag hosszú ideig nem változik a mintázat ,akkor amedíg a pufferben lévő képeket ismételgetik a szintenkénti PIC-ek addíg a bennük lévő átmeneti tárolót ráérsz feltölteni.
(az előző hsz-ben irt 16 portos ict elnéztem kell még minimum 3 szabad port a kommunikációhoz meg a szinkronhoz ,de olyat is szerintem 500ft környékén kapsz, esetleg az előzőleg belinkelt rgb ledes modult különálló ledekre áttervezed és egy panel lerendez 3 szintet. Azt nem tudom hogyan egyszerűbb programozni,de úgy érzem a shift regiszteres ,főleg ha még bővíteni akarod sebességkorlátokba fog ütközni.Egyrészről a processzornak egyre több időt kell a kiírással foglalkozni,másrészről ha nem kellően rövid a hozzávezetés a számlálók órajele sem növelhető túlságosan.Az inteligens szinteknek pedig ha ismétlődik egy kép akkor azt elég egyszer elküldeni a maradék időben az alap bármit csinálhat.
A példa kapcsolás közös katódos RGB LED-re készült. De kis "törpölés" után a közös anódos mátrix is elkészíthető belőle.
Szerintem egy 2*2-es RGB LED-mátrixot ( s a vezérléshez szükséges meghajtót ) kellene próbakapcsolással összeállítani a PIC programfejlesztéséhez. Ez anyagilag sem megterhelő és a program fejlesztésével is el tudsz indulni. Ha a 2x2-es RGB mátrix vezérlése már nem okoz gondot, akkor a nagyobb elemszámú kijelző kezelése is menni fog. A három alapszín miatt a 2*2-es "kijelzőnél" is 12db LED vezérlését kell megoldani. A színek keverésére a PWM-es elvet kellene használni. Vagyis az egyes színek kigyújtási idejét kell megfelelően időzíteni...
Úgyfest sikerül rábeszélni a panelenkénti kontrolleres megoldásra. Utána jártam mit hogyan tudnék beszerezni, ATMEGA8 as IC lenne a legolcsóbb amit meg tudok venni nagytételben, adatlapját nézegetve, gondolom a 2vezetékes soros adatkommunikációról lenne szó. Viszont felmerült bennem az a kérdés hogy miként tudom majd őket megcímezni ? Honnan fogja tudni az adott panel hogy ő hanyadik számú panel? Remélem érthető volt a kérdés Erre ha valaki mond egy megoldást nekem akkor már tervezem is a nyákot
Eszembejutott valami remélem járható út lesz :
Az kijelzős panelek mikrokontrollerének egyik lába át lenne vezetve a következő fokozat kontrollerének egyik lábára(kimenet , bemenet szinten) és ezen a lábon tudnának jelzést adni egymásnak az egymás után kapcsolt fokozatok. Ez a jelzés az lenne hogy a vezérlőtől megkaptam-e már a címbeállító utasítást vagy sem. Ha "már megkaptam" akkor az aktuális fokozat aktívvá tenné magát a TWI (I2C) adatátvitelre és ő is kérne egy új címbeállítást, ami a vezérlőn egy egyszerű változó +1es értéke lenne. Amint ő is átírta magát jelez a következőnek ami szintén aktiválja magát és így tovább.. Ha jól sejtem ugye ha mindegyik panel kontrollerére ugyanazt a "slave" programot töltöm akkor a default címük azonos lenne... Ugye? Így talán automatikusan minden egyes resetnél újra be lehetne állítani a címeket.Persze az első slave eszköznek a fő vezérlő adná ezt az "átírtam a címet, te jösz" jelet... Ezzel még a vezérlő is tisztában lehetne hogy éppen mennyi a rendelkezésre álló felület amin játszani lehet.. Jól gondolom ?
Jól gondolod, szépen, lassan feltalálod a spanyol viaszt, más szavakkal - végre - megérted miért és hogyan van manapság megoldva ez a kérdéskör. Én le lettem hurrogva, miért lövök ágyúval verébre: azaz javasoltam 44 lábú PIC18-at (nagy flash, RAM, EEPROM memória, sok IO port, sok időzítő, sok interfész, stb..) 500-600 forintért, a 300 forintos 18 lábú PIC16 helyett (hetekig görcsöltek, hogyan lehet beleférni a 2K flash memóriába). Én inkább kifizetem a párszáz forintos plusz hardver árat a sok szoftveres görcsölés helyett
Ez hasonló út, mintha ugyanazt a digitális kvarcórát megépítenéd először kb 571 darab tranzisztorból, majd 32 darab TTL IC-ből, végül 1 PIC-cel Mindegyik szép út, Te melyiket választod? Az általam linkelt kapcsolásban I2C buszon vezérelt intelligens LED meghajtók vannak sorba fűzve (áruk kb 2000 forint). A címüket DIP kapcsolókkal lehet beállítani. Proba és én megpróbált rávilágítani a legegyszerűbb útra...
Lemaradt (már nem engedett módosítani):
A 8$-ért (+némi postaköltség) megkapod a 4 darab 8x8-as LED mátrixot, a 2000 forintos meghajtó IC-t, csatlakozókat, szalagkábelt, alkatrészeket készre szerelt nyák-on.
Jajj , általam nem lettél lehurrogva Én csak szeretném saját kézből megépíteni az egészet, és igen saját szenvedésből feltalálni a spanyol viaszt.. A hobbi elektronika erről szól Ha elkészül , a legvégén megintcsak nem bolti műanyag dobozba akarom berakni hanem majd saját cuccba, előbb utóbb mindenben nagy gyakorlata lesz az embernek, ha majd ráunok ezekre a "szenvedésekre" akkor veszek kész dolgokat. Ja és a 8$ tényleg nem sok, de ha most összerakom az alkatrészeket akkor 1000 huf alatt vagyok , nyákkal ledekkel, egyéb finomságokkal, persze az idő megfizethetetlen, de ezen nem veszünk össze.
Amúgy köszi a segítséget mindenkinek, úgyis jelzem ha valahol elakadok, addig meg :
Nem Te hurrogtál le, korábban, más topicban történt.
A válaszodra a kérdés: - hardveres címzés: DIP kapcsolókkal vagy 0 ohm-os ellenállásokkal; - szoftveres címzés: adat fejlécben a cím, melyet előzőleg a modulba kell programozni. Egészségedre, jó építést! :wave:
A PIC 16f1516 is jó alternatíva lehet ha nem tetted le a voksod egy család mellett. a chipc.. nél 260+afa 28 láb 25 io port, esetleg a butább 16f57 170+afa .
Hát körbekérdezgettem kitől mit mennyiért szerzek be, és azért maradt az ATMEGA8 mert 160huf/db csak nekem csak most, karácsonyi ajándék, 8x8 IO láb a ledeknek, kommunikációs lábak, plusz még játszadozhatok is a fennmaradó lábakkal, ami meg persze kelleni fog mert azért nem csak kijelezni fog a végeredmény. Memória méret is elég nagy szóval ez maradt. Nincs bajom a PIC-el se, de ez most kecsegtetőbb.
Bocs, hogy beleszólok, nem igazán értek hozzá. Belebotlottam, esetleg ötletadónak is jó lehet.
Kérdés: milyen mennyiségben? Azaz mi a mennyiség?
25 darab felett már jelentős árkedvezmény elérhető. Szerintem a fejlesztés-programírás messze a "legköltségesebb" pénzben és időben is, de mindenképp a legnehezebb rész, mely mellett eltörpül a párszáz forint/IC árkülönbség.
Hát így valóban..Csak rákattintottam az aláhúzott részre és azt az árat kicsit soknak találtam.
Őszintén ha sikerül összehoznom akkor jó pár helyre szeretnének hasonlót. Ha az elv megvan, a kijelzés jó akkor lehet ebből a 8x8as mátrixból akár 10-20db-ot is egymás mellé tenni akár több sorba, fantáziaképekkel vagy akár szöveggel, az igény meglenne rá, az ismerettség is hogy akár megvegyék, és ha csak azt számolom hogy 1db 12x3x (8x8) as kijelzőhöz 36+1 db kontroller kellene akkor már szóbajön az ár.. Persze egyenlőre működjön és én jól szórakozzak vele, a többi már utána csak arról szól hogy ismerősöknek megtetszik-e
Ez a TLC5940 ic elég pöpecnek tűnik, de erre most azt mondom hogy próbának drága és ahogy nézem ezeket is sorosan lehetne felfűzni egymás után amit egyenlőre úgyérzem hogy programozás szempontjából nehezebben tudnám megoldani. Viszont a következő lépés lehet akár ez is. Köszönöm a tippet pucuka.
Sziasztok találtam videót arról amit szeretnék építeni de eben a segítségeteket kérném.
Erről lenne szó. Kitud segíteni, hogy mivel oldhatnám meg az rgb ledek vezérlését ?
Gondoltam megosztom veletek, egy projektemhez
http://r2-d2-project.blogspot.com/ (R2-D2) készült (egy jó barátom tervezte az egészet) mátrix kijelző (8x32 ledes) összes tervét. Ha van valakinek kedve, fejlesztheti, programozhat, stb. A leírásban benne van minden info (txt file) nyákrajz program, hex, alkatrészlista. Jelenleg csak egy alap program van benne (R2-D2 felirat, ami 100másodperc után leúszik, majd visszajön) ,de működik. Nekem ilyen ,vagy hasonló effekt kellene csak. http://www.youtube.com/watch?v=rxPmi70v19w&feature=related |
Bejelentkezés
Hirdetés |