Tartalomjegyzék:

Charlieplexing LED-ek- az elmélet: 7 lépés (képekkel)
Charlieplexing LED-ek- az elmélet: 7 lépés (képekkel)

Videó: Charlieplexing LED-ek- az elmélet: 7 lépés (képekkel)

Videó: Charlieplexing LED-ek- az elmélet: 7 lépés (képekkel)
Videó: ТАКОВ МОЙ ПУТЬ В L4D2 2024, Június
Anonim
Charlieplexing LED-ek- az elmélet
Charlieplexing LED-ek- az elmélet
Charlieplexing LED-ek- az elmélet
Charlieplexing LED-ek- az elmélet

Ez az oktatható kevésbé építési projekt, és inkább a charlieplexing elméletének leírása. Alkalmas azoknak, akik ismerik az elektronika alapjait, de nem teljesen kezdőknek. Azért írtam, hogy válaszoljak a sok kérdésre, amelyeket a korábban megjelent Instructables -ben kaptam.

Mi az a "Charlieplexing"? Sok LED -et vezet, csak néhány tűvel. Ha arra kíváncsi, hogy Charlieplexing nevét Charles Allenről nevezték el a Maximnál, aki kifejlesztette a technikát. Ez sok mindenre hasznos lehet. Előfordulhat, hogy az állapotinformációkat egy kis mikrovezérlőn kell megjelenítenie, de csak néhány tűvel kell rendelkeznie. Érdemes megjeleníteni egy divatos pontmátrixot vagy óra kijelzőt, de nem szeretne sok összetevőt használni. Néhány más projekt, amely bemutatja a charlieplexet, érdemes megnézni a következőket: Hogyan lehet sok LED -et meghajtani néhány mikrokontroller -tűből. írta: Westfw:- https://www.instructables.com/id/ED0NCY0UVWEP287ISO/ És néhány saját projektem, a Microdot karóra:- https://www.instructables.com/id/EWM2OIT78OERWHR38Z/ A Minidot 2 óra: - https://www.instructables.com/id/E11GKKELKAEZ7BFZAK/ A charlieplexing használatának másik remek példája a következő: https://www.jsdesign.co.uk/charlie/ A Minidot 2 óra egy fejlett charlieplexing sémát vezet be halványítás/halványítás, amelyről itt nem lesz szó. FRISSÍTÉS 2008. augusztus 19.: Hozzáadtam egy zip fájlt egy áramkörrel, amely kihasználhatja a mátrix charliplexing funkciót a nagy teljesítményű LED -ekhez (hosszan:)) a megjegyzések részben. Nyomógombos + pozíciókódolóval rendelkezik, amely lehetővé teszi a felhasználói interfészt, valamint az USB vagy RS232 számítógépes vezérlés áramkörét. A magas oldali feszültségű sínek mindegyike a két feszültség egyikére állítható be, mondjuk 2.2V a PIROS LED -ekhez és 3.4V a zöld/kék/fehérhez. A magas oldalsó sínek feszültségét trimpot segítségével lehet beállítani. Elképzelném, hogy egy 20 vezetékes IDC szalagkábelt csatlakoztasson az alaplaphoz, és 20 tűs IDC csatlakozókat csatlakoztasson a szalag teljes hosszához, és mindegyik LED tábla kapcsolódjon a mátrix bármely vezetékéhez. Az áramkör az Eagle Cad -ban van, és az alábbi képen látható. A magas oldali áramkört optocsatolók használatával valósítják meg, amelyek szerintem alkalmasak lehetnek. Valójában nem teszteltem ezt az áramkört, és nem írtam szoftvert időhiány miatt, de megjegyzésre bocsátottam, különösen érdekel az optocsatoló megvalósítása. Bárki, aki elég bátor, hogy kipróbálja … kérjük, írja le az eredményeket. UPDATE 2008. augusztus 27.: Azok számára, akik nem használják az EagleCad -ot…

1. lépés: Néhány LED -elmélet

Néhány LED -elmélet
Néhány LED -elmélet
Néhány LED -elmélet
Néhány LED -elmélet

A Charlieplexing a LED -ek és a modern mikrovezérlők számos hasznos aspektusára támaszkodik.

Először is, mi történik, ha egy LED -et csatlakoztat az elektromos hálózathoz. Az alábbi fődiagram egy tipikus 5 mm -es kis teljesítményű LED If v Vf görbéjét mutatja. Ha az „előremenő áramot” jelenti, Vf az „előremenő feszültséget” jelenti. A függőleges tengely más szavakkal azt az áramot mutatja, amely a LED -en keresztül áramlik, ha a vízszintes tengely feszültségét a terminálokra helyezi. Ez fordítva is működik, ha megméri, hogy az áram valamilyen értékű, akkor áttekinthet a vízszintes tengelyre, és láthatja, hogy a LED milyen feszültséget mutat a csatlakozóin. A második diagram az If és Vf feliratú LED sematikus ábrázolását mutatja. A fő diagramból a grafikon azon területeit is megjelöltem, amelyek érdekesek. - Az első terület az, ahol a LED nem világít. Pontosabban, a LED olyan halványan bocsát ki fényt, hogy nem fogja látni, ha nincs valamilyen szuper-duper képerősítője. - A második területen a LED csak enyhén halvány izzást sugároz. - A harmadik terület az, ahol a LED -et általában működtetik, és a gyártó minősítése szerint fényt bocsát ki. - A negyedik terület az, ahol a LED -et működési határain túl működtetik, valószínűleg nagyon fényesen világít, de sajnos csak rövid ideig, mielőtt a varázslatos füst kiszabadul, és nem fog újra működni…… azaz ezen a területen kiég, mert túl sok áram folyik át rajta. Vegye figyelembe, hogy a LED If/Vf görbéje vagy működési görbéje „nemlineáris” görbe. Vagyis nem egyenes vonal… van benne kanyar vagy törés. Végül ez az ábra egy tipikus 5 mm -es piros LED -re vonatkozik, amelyet 20 mA -es feszültségre terveztek. A különböző gyártóktól származó különböző LED -ek eltérő működési görbékkel rendelkeznek. Például ebben a diagramban 20 mA -nél a LED előremenő feszültsége körülbelül 1,9 V lesz. Egy kék 5 mm -es LED -nél 20 mA -nél az előremenő feszültség 3,4 V lehet. Egy nagy teljesítményű, fehér luxeon LED -nél 350 mA -nél az előremenő feszültség 3,2 V körül lehet. Egyes LED -csomagok sorban vagy párhuzamosan több LED -ből állhatnak, ami ismét megváltoztatja a Vf/If görbét. Általában a gyártó olyan működési áramot határoz meg, amelyen biztonságosan használható a LED, és az előremenő feszültséget ezen az áramon. Általában (de nem mindig) az alábbi táblázatot kapja, mint az adatlap. Meg kell néznie a LED adatlapját, hogy megállapítsa, mennyi az előremenő feszültség a különböző működési áramoknál. Miért olyan fontos ez a grafikon? Mert ez azt mutatja, hogy amikor a LED -en feszültség van, akkor az áramló áram a grafikon szerint lesz. Csökkentse a feszültséget, és kevesebb áram folyjon….. és a LED „kialszik”. Ez része a charlieplexing elméletének, amelyhez a következő lépésben fogunk eljutni.

2. lépés: Az (elektronika) törvényei

Az elektronika törvényei
Az elektronika törvényei
Az elektronika törvényei
Az elektronika törvényei
Az elektronika törvényei
Az elektronika törvényei

Még mindig nem a charlieplexing varázslatában…. El kell mennünk az elektronikai törvények néhány alapjához. Az első érdekes törvény kimondja, hogy az elektromos áramkörben lévő összes csatlakoztatott komponens teljes feszültsége megegyezik az egyén összegével feszültség az alkatrészeken. Ez az alábbi fődiagramon látható. Ez akkor hasznos LED -ek használatakor, mert az átlagos akkumulátor vagy mikrokontroller kimeneti csap soha nem lesz pontosan megfelelő feszültségű ahhoz, hogy a LED -et az ajánlott árammal működtesse. Például egy mikrokontroller általában 5 V -on működik, és a kimeneti csapjai 5 V -on lesznek bekapcsolva. Ha csak egy LED -et csatlakoztat a mikro kimeneti tüskéjéhez, akkor az előző oldal működési görbéjéből látni fogja, hogy túl sok áram folyik a LED -ben, és felmelegszik és kiég (valószínűleg károsítja a mikrot is). Ha azonban egy második komponenst sorba vezetünk a LED -del, levonhatjuk az 5 V -os részeket, hogy a bal oldali feszültség éppen megfelelő legyen a LED működéséhez a megfelelő működési áram mellett. Ez tipikusan ellenállás, és ha ily módon használják, akkor áramkorlátozó ellenállásnak nevezik. Ezt a módszert nagyon gyakran használják, és az úgynevezett „ohmos törvényhez” vezet.… Így Ohm úrról nevezték el. Az Ohms -törvény az V = I * R egyenletet követi, ahol V az a feszültség, amely az R átfolyik az ellenálláson. V voltban, én erősítőben és R ohmban. Tehát ha 5 V-ot kell költenünk, és 1,9 V-ot szeretnénk a LED-en keresztül, hogy 20 mA-en működjön, akkor azt akarjuk, hogy az ellenállás 5-1,9 = 3,1 legyen V át rajta. Ezt láthatjuk a második ábrán. Mivel az ellenállás sorba van kapcsolva a LED -del, ugyanaz az áram folyik az ellenálláson, mint a LED, azaz 20 mA. Tehát az egyenletet átrendezve megtaláljuk az ellenállást, amelyre szükségünk van a munka elvégzéséhez. eddig… menő. Most nézze meg a 3. ábrát. A LED két ellenállás közé van helyezve. A fent említett első törvény szerint ugyanez a helyzet a második ábrán. A LED -en 1,9 V feszültség van, így a specifikáció szerint működik. Az ellenállások mindegyike 1,55 V -ot von le (összesen 3,1). A feszültségeket összeadva 5V (a mikrovezérlő csapja) = 1,55V (R1) + 1,9V (a LED) + 1,55V (R2) van, és minden kiegyensúlyozódik. Az ohmos törvény alapján megállapítjuk, hogy az ellenállásoknak egyenként 77,5 ohmnak kell lenniük, ami fele a második diagramból számított összegnek. Természetesen a gyakorlatban nehezen talál egy 77,5 ohmos ellenállást, ezért csak a legközelebbi elérhető értéket kell kicserélnie, mondjuk 75 ohm, és végül egy kicsit nagyobb áramerősséggel a LED vagy 82 ohm biztonságos és kicsit kevesebb. Miért a fenébe kellene ezt az ellenállást csinálni, hogy egy egyszerű LED -et vezessünk….. Nos, ha van egy LED -je, akkor minden kicsit butaság, de ez tanulságos a charlieplexelésnél és jól jön a következő lépéshez.

3. lépés: A „kiegészítő meghajtó” bemutatása

Bemutatjuk a „kiegészítő meghajtót”
Bemutatjuk a „kiegészítő meghajtót”

Egy másik név, amely pontosabban leírja a „charlieplexing” -et, a „kiegészítő hajtás”.

Az átlagos mikrokontrollerben a firmware -ben utasíthatja a mikro -t, hogy állítsa a kimeneti tűt 0 -ra vagy 1 -re, vagy mutasson 0 V feszültséget a kimeneten vagy 5 V feszültséget a kimeneten. Az alábbi diagram most a szendvicses LED -et mutatja megfordított partnerrel… vagy egy kiegészítő LED -et, tehát kiegészítő hajtást. A diagram első felében a mikro 5 V -ot ad ki az A tűre, és 0 V -ot a B tűre. Az áram így A -ból B -be áramlik. világít. Ezt hívják fordított elfogultságnak. Nálunk az előző oldalon leírtak megfelelőek. A LED2 -et alapvetően figyelmen kívül hagyhatjuk. A nyilak az aktuális áramlást mutatják. A LED lényegében dióda (tehát fénykibocsátó dióda). A dióda olyan eszköz, amely lehetővé teszi, hogy az áram az egyik irányba áramoljon, a másikba viszont nem. A LED vázlata ezt mutatja, az áram a nyíl irányába fog áramlani, de más irányban blokkolva van. Ha utasítjuk a mikrot, hogy most 5 V -ot adjon ki a B érintkezőbe, és 0 V -ot az A tűn, akkor az ellenkezője van. Most a LED1 fordított előfeszítésű, a LED2 előre elfogult és lehetővé teszi az áramlást. A LED2 világít és a LED1 sötét lesz. Most jó ötlet lehet megvizsgálni a bevezetőben említett különböző projektek vázlatait. Ezeknek a komplementer pároknak sokat kell látnia egy mátrixban. Természetesen az alábbi példában két LED -et hajtunk, két mikrovezérlő tűvel … mondhatod, miért zavar. Nos, a következő rész az, ahol eljutunk a charlieplexinghez, és hogyan használja ki hatékonyan a mikrokontrollerek kimeneti csapjait.

4. lépés: Végül… Charlieplex Matrix

Végül… Charlieplex Mátrix
Végül… Charlieplex Mátrix
Végül… Charlieplex Mátrix
Végül… Charlieplex Mátrix

Amint azt a bevezetőben említettük, a charliplexing egy praktikus módja annak, hogy sok LED -et vezessen, csak néhány tűvel a mikrokontrolleren. Az előző oldalakon azonban nem mentettünk egyetlen csapot sem, két LED -et hajtottunk két tűvel….

Nos, kiterjeszthetjük a kiegészítő hajtás gondolatát egy charlieplex mátrixba. Az alábbi diagram a minimális charlieplex mátrixot mutatja, amely három ellenállásból és hat LED -ből áll, és csak három mikrovezérlőt használ. Most látod, mennyire praktikus ez a módszer? Ha hat LED -et szeretne normál módon meghajtani…. Valójában a mikrovezérlő N csapjaival potenciálisan meghajthat N * (N - 1) LED -eket. 3 csap esetén ez 3 * (3-1) = 3 * 2 = 6 LED. A dolgok gyorsan összegyűlnek, több csap segítségével. 6 tűvel 6 * (6 - 1) = 6 * 5 = 30 LED -et hajthat végre. Most a charlieplexing kicsit. Nézze meg az alábbi diagramot. Három egymást kiegészítő párral rendelkezünk, egy pár a mikro kimeneti csapok kombinációja között. Egy pár A-B, egy pár B-C és egy pár A-C között. Ha most leválasztaná a C csapot, ugyanaz a helyzet, mint korábban. 5 V -os A tűn és 0 V B érintkezőn a LED1 világítani fog, a LED2 fordított előfeszítésű és nem vezet áramot. 5V a B érintkezőn és 0V az A tűn A LED2 világítani kezd, és a LED1 fordított irányú. Ez a többi mikrotűre vonatkozik. Ha leválasztjuk a B csapot, és az A tűt 5 V -ra, a C csapot 0 V -ra állítjuk, akkor a LED5 világít. Fordítva úgy, hogy az A érintkező 0V, a C csap 5V, akkor a LED6 világít. Ugyanez vonatkozik a B-C csapok közötti komplementer párra. Várj, hallom, ahogy mondod. Nézzük kicsit közelebbről a második esetet. 5V van az A tűn, és 0V a C tűn. Lecsatlakoztattuk a B csapot (a középső). Rendben, tehát egy áram folyik a LED5 -en, az áram nem folyik át a LED6 -on, mert fordított előfeszítésű (és a LED2 és a LED4 is)…. De van egy út is, amelyen keresztül az áram az A tűből, a LED1 és LED3 segítségével nincs? Miért nem világítanak ezek a LED -ek? Itt található a charlieplexing sémája. Valójában áram folyik mind a LED1, mind a LED3 esetében, azonban a kettő együttes feszültsége csak egyenlő lesz a LED5 feszültségével. Általában a feszültség fele a feszültségük, mint a LED5 -nek. Tehát ha 1,9V van a LED5 -en, akkor csak 0,95V lesz a LED1 -en, és 0,95V a LED3 -on. A cikk elején említett If/Vf görbéből láthatjuk, hogy ezen a félfeszültségen az áram sokkal alacsonyabb, mint 20mA….. és ezek a LED -ek nem fognak világítani. Ezt jelenlegi lopásnak nevezik. Így az áram nagy része a kívánt LED -en keresztül áramlik, a legközvetlenebb út a legkevesebb LED -en (azaz egy LED -en) keresztül, nem pedig a LED -ek sorozatos kombinációján. Ha megnézi az aktuális áramlást az 5V és a 0V kombinációjának bármely kombinációja esetén, amely a charlieplex mátrix bármely két meghajtócsapjára vonatkozik, ugyanazt fogja látni. Egyszerre csak egy LED világít. Gyakorlatként nézze meg az első helyzetet. 5V az A tűn és 0V a B érintkezőn, válassza le a C csapot. A LED1 a legrövidebb út az áramhoz, és az 1 LED világít. Egy kis áram is átmegy a LED5 -en, majd készítsen biztonsági másolatot a LED4 -ről a B érintkezőre….. de ismételten, ez a két soros LED nem lesz képes elegendő áramot elszívni az 1 -es LED -hez képest ahhoz, hogy fényesen világítson. Így valósul meg a charlieplexing ereje. Lásd a második diagramot, amely a Microdot karórám vázlata… 30 LED, mindössze 6 tűvel. A Minidot 2 órám alapvetően a Microdot kibővített változata … ugyanaz a 30 LED egy tömbben. A minta létrehozásához a tömbben minden megvilágítandó LED -t röviden bekapcsolnak, majd a mikro a következőre lép. Ha a tervek szerint világít, akkor rövid időre újra bekapcsol. A LED -ek gyors beolvasásával a „látásállóság” elve lehetővé teszi, hogy egy sor LED statikus mintát mutasson. A Minidot 2 cikkben van egy kis magyarázat erre az elvre. De várj….. Látszólag kissé átfutottam a fenti leíráson. Mi ez a „B csatlakozó lecsatlakoztatása”, a „C csap lekapcsolása” üzlet. Következő rész kérem.

5. lépés: Három állapot (nem triciklik)

Három állapot (nem triciklik)
Három állapot (nem triciklik)
Három állapot (nem triciklik)
Három állapot (nem triciklik)

Az előző lépésben említettük, hogy egy mikrovezérlő programozható 5 V vagy 0 V feszültség kimenetére. Annak érdekében, hogy a charlieplex mátrix működjön, két tűt választunk ki a mátrixban, és húzzuk le a többi tüskét.

Természetesen a csapok kézi leválasztása kissé nehézkes, különösen akkor, ha nagyon gyorsan átvizsgáljuk a dolgokat, hogy a látásállóság hatását a minta megjelenítésére használjuk. Mindazonáltal a mikrokontroller kimeneti csapjai is programozhatók bemeneti csapokká. Ha egy mikrotű bemenetre van programozva, akkor az úgynevezett „nagy impedanciájú” vagy „háromállapotú” állapotba kerül. Vagyis nagyon nagy ellenállást mutat (a megaohm nagyságrendű, vagy millió ohm nagyságú) a tűvel szemben. Ha nagyon nagy ellenállás van (lásd az ábrát), akkor lényegében a csapot leválasztottnak tekinthetjük, és így működik a charliplex séma. A második diagram a példánkban szereplő 6 LED mindegyikének megvilágítására szolgáló kombinációk mátrixcsapjait mutatja. A három állapotot általában „X” jelöli, az 5V értéket „1” (logikai 1 esetén), a 0V értéket pedig „0” jelzi. A "0" vagy "1" mikro firmware -ben a csapokat kimenetnek kell programoznia, és az állapota jól meghatározott. A háromállapotú programozáshoz bemenetnek kell programoznia, és mivel bemenet, valójában nem tudjuk, mi lehet az állapot…. Innen az ismeretlen „X”. Bár egy PIN-kódot háromállapotúvá vagy bemenetként rendelhetünk hozzá, nem kell elolvasnunk. Csak kihasználjuk azt a tényt, hogy a mikrovezérlő bemeneti csapja nagy impedanciájú.

6. lépés: Néhány gyakorlati kérdés

A charlieplexing varázsa azon a tényen alapul, hogy a soros LED -ek egyedi feszültsége mindig kisebb lesz, mint egy LED -en, ha az egyetlen LED párhuzamos a sorozat kombinációjával. Ha a feszültség kisebb, akkor az áram kisebb, és remélhetőleg a sorozatkombinációban az áram olyan alacsony lesz, hogy a LED nem fog világítani. Ez azonban nem mindig van így. Tegyük fel, hogy két piros LED -je volt 1,9 V előremenő feszültséget a mátrixban és egy kék LED -et 3,5 V előremenő feszültséggel (mondjuk LED1 = piros, LED3 = piros, LED5 = kék a 6 LED -es példánkban). Ha felgyújtja a kék LED -et, akkor a végeredmény 3.5/2 = 1.75V lesz minden piros LED -hez. Ez nagyon közel lehet a LED halvány működési területéhez. Előfordulhat, hogy a piros LED -ek halványan fognak világítani, amikor a kék világít. Ezért jó ötlet, hogy megbizonyosodjon arról, hogy a mátrixban lévő különböző színű LED -ek előremenő feszültsége nagyjából megegyezik az üzemi árammal, vagy pedig ugyanazt a színt használja LED -ek egy mátrixban. A Microdot/Minidot projektekben nem kellett aggódnom emiatt, nagy hatékonyságú kék/zöld SMD LED -eket használtam, amelyek szerencsére nagyjából ugyanazzal az előremenő feszültséggel rendelkeznek, mint a piros/sárga. Ha azonban ugyanezt megvalósítanám 5 mm -es LED -ekkel, az eredmény problémásabb lenne. Ebben az esetben külön telepítettem volna egy kék/zöld charlieplex mátrixot és egy piros/sárga mátrixot. Szükségem lett volna több csap használatára…. Ha van egy nagy mátrixa, és gyorsan letapogatja, akkor minden LED csak rövid ideig világít. Ez viszonylag halványnak tűnik a statikus kijelzőhöz képest. Csalhat úgy, hogy növeli az áramot a LED -en keresztül az áramkorlátozó ellenállások csökkentésével, de csak egy bizonyos pontig. Ha túl sok áramot húz a mikroból, túl sokáig károsítja a kimeneti csapokat. Ha van egy lassan mozgó mátrixa, mondjuk egy állapot- vagy ciklonkijelző, akkor az áramot biztonságos szinten tarthatja, de továbbra is világos LED -kijelzővel rendelkezik, mivel minden LED hosszabb ideig világít, esetleg statikus (egy állapotjelző). A charlieplexing néhány előnye:- csak néhány tűt használ a mikrokontrolleren sok LED vezérlésére- csökkenti az alkatrészek számát, mivel nincs szüksége sok meghajtó chipre/ellenállásra stb. Néhány hátrány: mind a feszültségállapot, mind a csapok bemeneti/kimeneti állapota- óvatosnak kell lenni a különböző színek keverésével- a NYÁK elrendezés nehéz, mert a LED mátrix összetettebb.

7. lépés: Hivatkozások

Sok hivatkozás található a charlieplexelésről az interneten. A cikk elején található linkeken kívül néhány közülük: A Maxim eredeti cikke, ez sokat mond a 7 szegmenses kijelző vezetéséről, amely szintén lehetséges. https://www.maxim-ic.com/appnotes.cfm/appnote_number/1880A wiki bejegyzéshttps://en.wikipedia.org/wiki/Charlieplexing

Ajánlott: