Kazalo:

Kako poganjati veliko LED diod iz nekaj zatičev mikrokrmilnika: 6 korakov (s slikami)
Kako poganjati veliko LED diod iz nekaj zatičev mikrokrmilnika: 6 korakov (s slikami)

Video: Kako poganjati veliko LED diod iz nekaj zatičev mikrokrmilnika: 6 korakov (s slikami)

Video: Kako poganjati veliko LED diod iz nekaj zatičev mikrokrmilnika: 6 korakov (s slikami)
Video: ESP32 Tutorial 8 -Walking Light 74HC595 Shift register -SunFounder's ESP32 IoT Learnig kit 2024, November
Anonim
Kako iz nekaj zatičev mikrokrmilnika pripeljati veliko LED
Kako iz nekaj zatičev mikrokrmilnika pripeljati veliko LED

Na podlagi dejstva, da imajo številni zatiči mikrokrmilnika tri stanja (+V, GND ali "visoka impedanca"), lahko N*(N-1) LED pripeljete iz N zatičev. Tako lahko mali 8-polni mikrokrmilnik, kot je PIC12Fxxx ali ATtiny11, poganja 20 LED-lučk vsebuje pet razpoložljivih izhodnih zatičev, za nekakšen vhod pa je še en pin. Oglejte si tudi

Korak: 20 LED na 5 nožicah

20 LED na 5 nožicah
20 LED na 5 nožicah

Trenutni pridelek mikrokrmilnikov z nizkim številom pin (6 pinov na 20 pinov

celoten paket) so privlačne cene in "srčkani", vendar se poraja vprašanje, kako najbolje uporabiti te zatiče za običajne aplikacije, kot so LED za vožnjo. Pristop neposredne povezave do pogonskih LED porabi en pin za vsako LED. Tradicionalna shema multipleksiranja, pri kateri vrstice LED anod poganja en niz N zatičev, skupna katoda vsake vrstice pa drugi niz M zatičev, prižge N*M LED z N+M zatiči. Vendar pa na procesorju s samo 5 ali manj izhodi (tako je pri večini 8-pinskih mikrokrmilnikov) to komaj prinaša več izhodov kot neposredni pogon.

2. korak: Charlieplexing

Charlieplexing
Charlieplexing

Ob predpostavki, da so izhodni zatiči dejansko sposobni tri stanja (aktivna visoka, aktivna nizka in visoka impedanca (vhod)), je mogoče tudi deliti gonilnike vrstic in stolpcev ter upravljati N*(N-1) LED z le N zatiči. En zatič je priključen na običajne katode vrste LED in nižji, preostali zatiči N-1 pa so priključeni na anode in bodisi vodijo visoko, da osvetlijo ta stolpec, bodisi levo kot vhodi, da zapustijo LED. Maxim to tehniko imenuje "Charlieplexing" in jo opiše v (1); Microchip to omenja tudi v svojem dokumentu (2) (in izvaja tudi na plošči PICKit 1.) (1) "Charlieplexing-Multiplexing LED Display-Reduced Pin-Count LED" https://www.maxim-ic.com/appnotes. cfm/appnote_number/1880 (2) "Tips 'n Tricks 8-polni mikrokontrolerji FLASH PIC" https://ww1.microchip.com/downloads/en/DeviceDoc/40040b.pdf(3) Charlieplexing LEDs- The theory An Instructable by rgbphil

3. korak: Uresničite

Dajanje na delo
Dajanje na delo
Dajanje na delo
Dajanje na delo

Ta poganja 20 LED diod iz ATtiny11. Prejšnja različica te plošče je bila

dejansko zgrajena in se prikaže kot fotografija glavne strani. Bojim se, da je slika sheme precej brezupna; Eagle vam mora povedati, kje so priključeni signali.

4. korak: Manjši in bolj vsestranski …

Manjši in vsestranski…
Manjši in vsestranski…

Ker večino plošče zaseda LED matrika, lahko naredimo prostor

za čip Attiny ALI za mikročip PIC12F. Zmanjšajte LED diode na 3 mm in pojdite na dvostransko ploščo, pa dobimo nekaj približno 27x44 mm Žal, ta plošča še ni bila preizkušena …

5. korak: Itty Bitty

Itty Bitty
Itty Bitty

Microchip ima seveda svoje 6 -polne čipe PIC10F, ki lahko poganjajo

samo 6 LED iz 3 izhodnih zatičev. To je približno 16 mm v premeru. Če se odločite za 603 LED, se lahko nekoliko zmanjšate, vendar nisem prepričan, v čem je smisel.

6. korak: Programska oprema

Programska oprema postane nekoliko neurejena zaradi servirnih razlogov:

1) za prikazane tiskane vezje so LED diode razporejene na način, ki je primeren za postavitev tiskanega vezja, in ne v "pravilnem" vrstnem redu. IMO, to je način dela, vendar to pomeni, da vrstica 1 ne pomeni nujno bit 1 ali stolpec 3 ne pomeni bit 3. To zahteva raven preslikave med običajnim naslovljanjem vrstice/stolpca in bitov, ki jih je treba nastaviti. 2) Ker se isti bitovi uporabljajo za anode in katode, je lahko skupna (vrstna) povezava za nekatere bite sredi gonjenih (stolpnih) bitov. To pomeni, da morate bite stolpcev premakniti, odvisno od tega, ali so pred ali za bitom vrstice za ta niz stolpcev. 3) Izvesti morate izhodne besede za ioport in register smeri vrat. Priložena koda ASM za ATtiny11 je "dokaz koncepta". Sramotno neoptimiziran in slabo komentiran, a to je vse, kar sem do sedaj napisal.

Priporočena: