Sadržaj:
- Korak 1: 20 LED dioda na 5 pinova
- Korak 2: Charlieplexing
- Korak 3: Uključite ga u posao
- Korak 4: Manji i svestraniji …
- Korak 5: Itty Bitty
- Korak 6: Softver
Video: Kako izvesti mnogo LED dioda s nekoliko pinova mikrokontrolera .: 6 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:09
Koristeći činjenicu da mnogi pinovi mikrokontrolera imaju tri stanja (+V, GND ili "visoka impedancija", možete upravljati N*(N-1) LED diodama sa N pinova. Tako mali 8-pinski mikrokontroler poput PIC12Fxxx ili ATtiny11 može pokretati 20 LED dioda uključuje pet dostupnih izlaznih pinova, a još im je ostao jedan pin za neku vrstu ulaza. Vidite i
Korak 1: 20 LED dioda na 5 pinova
Trenutni opseg mikrokontrolera sa malim brojem pinova (6 pinova do 20 pinova uključeno
cijeli paket) su atraktivnih cijena i 'slatki', ali postavlja se pitanje kako najbolje koristiti te igle za uobičajene aplikacije, poput LED dioda za pogon. Pristup direktnim povezivanjem pogonskih LED dioda troši po jedan pin za svaku LED diodu. Tradicionalna shema multipleksiranja u kojoj se redovi LED anoda pokreću jednim setom od N pinova, a zajednička katoda svakog reda upravlja drugim setom M pinova uspijeva osvijetliti N*M LED diode s N+M pinova. Međutim, na procesoru sa samo 5 ili manje izlaza (kao što je slučaj s većinom 8-pinskih mikrokontrolera), to vam jedva daje više izlaza od izravnog pogona.
Korak 2: Charlieplexing
Pod pretpostavkom da izlazni pinovi zapravo mogu imati tri stanja (aktivna visoka, aktivna niska i visoka impedancija (ulaz)), također je moguće dijeliti upravljačke programe redaka i stupaca i kontrolirati N*(N-1) LED diode sa samo N pinova. Jedan pin je spojen na uobičajene katode u nizu LED dioda i spojen, a preostali pinovi N-1 spojeni su na anode i ili visoko vođeni da osvijetle tu kolonu, ili lijevo kao ulazi za napuštanje LED isključenja. Maxim ovu tehniku naziva "Charlieplexing" i opisuje je u (1); Microchip to također spominje u svom dokumentu (2) (i implementacije na ploči PICKit 1.) (1) "Charlieplexing-Multipleksiranje LED ekrana sa smanjenim brojem pin-ova" https://www.maxim-ic.com/appnotes. cfm/appnote_number/1880 (2) "Tips 'n Tricks 8-pinski FLASH PIC mikrokontroleri" https://ww1.microchip.com/downloads/en/DeviceDoc/40040b.pdf(3) Charlieplexing LEDs- The theory An Instructable by rgbphil
Korak 3: Uključite ga u posao
Ovo pokreće 20 LED dioda s ATtiny11. Ranija verzija ove ploče je bila
zapravo izgrađena i pojavljuje se kao fotografija glavne stranice. Bojim se da je slika šeme prilično beznadežna; trebate da vam Eagle kaže koji su signali gdje povezani.
Korak 4: Manji i svestraniji …
Budući da većinu ploče zauzima LED niz, možemo napraviti mjesta
bilo za Attiny čip ILI za mikročip PIC12F čip. Smanjite LED diode na 3 mm i idite na dvostranu ploču, a dobit ćemo nešto o 27x44 mm Nažalost, ova ploča još nije testirana …
Korak 5: Itty Bitty
Mikročip, naravno, ima svoje 6 -pinske čipove PIC10F, sposobne za pogon
samo 6 LED dioda sa 3 izlaza. Ovo je oko 16 mm u prečniku. Prelaskom na 603 LED diode možete se malo smanjiti, ali nisam siguran u čemu je stvar.
Korak 6: Softver
Softver postaje pomalo neuredan iz više razloga:
1) za prikazane PCB -e LED diode su postavljene na način koji odgovara rasporedu PCB -a, a ne u "ispravnom" redoslijedu bitova. IMO, ovo je način na koji se stvari rade, ali to znači da red 1 ne mora nužno značiti bit 1 ili kolumn 3 ne znači bit 3. To zahtijeva nivo mapiranja između uobičajenog adresiranja reda/kolone i bitove kojima je potrebno podešavanje. 2) Budući da se isti bitovi koriste za anode i katode, zajednička (redna) veza za neke bitove može biti u sredini pogonskih bitova (kolona). To znači da morate pomaknuti bitove stupaca ovisno o tome jesu li prije ili poslije bita retka za taj skup stupaca. 3) Morate izvesti izlazne riječi za ioport i registar smjera porta. Priloženi ASM kod za ATtiny11 je "dokaz koncepta". To je sramotno neoptimizirano i loše komentirano, ali to je sve što sam do sada napisao.
Preporučuje se:
Konfiguracija bitova osigurača AVR mikrokontrolera. Kreiranje i učitavanje u fleš memoriji mikrokontrolera programa LED treperenja .: 5 koraka
Konfiguracija bitova osigurača AVR mikrokontrolera. Kreiranje i učitavanje u fleš memoriji mikrokontrolera LED trepćućeg programa. U ovom slučaju kreirat ćemo jednostavan program u C kodu i snimiti ga u memoriju mikrokontrolera. Napisat ćemo vlastiti program i kompajlirati heksadecimalnu datoteku, koristeći Atmel Studio kao integriranu razvojnu platformu. Konfigurirat ćemo osigurač bi
Kako upotrijebiti nekoliko komada drva za sastavljanje u slatku i moćnu drvnu ruku robota: 10 koraka
Kako upotrijebiti nekoliko komada drveta za sastavljanje u slatku i snažnu drvenu robotsku ruku: Naziv robotske ruke je WoodenArm. Izgleda jako slatko! Ako želite više detalja o WoodenArmu, posjetite www.lewansoul.com Sada možemo napraviti uvod o WoodenArmu, idemo dalje
Kako izvesti Kindle Highlights (Uključeni lični dokumenti): 6 koraka
Kako izvesti Kindle Highlights (Uključeni lični dokumenti): Ovo je izvorno bio moj blog. Shvatio sam da pišem mnogo postova "uradi sam" koji su prikladni za pretvaranje u instrukcije, pa sam mislio da ih ponovo objavim ovdje. Originalne postove na mom blogu možete pročitati ovdje. Poučne pčele
Kako besplatno izvesti mod za brzi požar (potreban vam je samo odvijač): 10 koraka
Kako besplatno napraviti brzi mod za gašenje požara (sve što vam je potrebno je odvijač): Danas ću vas naučiti kako napraviti način brzog paljenja na xbox uređaju: Jedan torx T8 odvijač sa sigurnosnom rupom ILI možete upotrijebiti mali ravna glava. Ovaj put koristim Titan Torx t8 sa sigurnosnom rupom koja se može kupiti u Autozoni
Kako stvoriti jednu potpuno fokusiranu sliku iz nekoliko djelomično fokusiranih: 4 koraka
Kako stvoriti jednu potpuno fokusiranu sliku od nekoliko djelomično fokusiranih: Predlažem korištenje softvera Helicon Focus. Windows i Mac verzije dostupne su na web lokaciji d-Stidio. Program je dizajniran za makrofotografiju, mikrofotografiju i hiperfokalnu pejzažnu fotografiju kako bi se nosili s problemom plitke dubine polja