Obsah:

Matica LED pomocou posuvných registrov: 7 krokov (s obrázkami)
Matica LED pomocou posuvných registrov: 7 krokov (s obrázkami)

Video: Matica LED pomocou posuvných registrov: 7 krokov (s obrázkami)

Video: Matica LED pomocou posuvných registrov: 7 krokov (s obrázkami)
Video: Часть 1 — Аудиокнига «Том Свифт и его мотоцикл» Виктора Эпплтона (гл. 1–12) 2024, November
Anonim
Matica LED pomocou posuvných registrov
Matica LED pomocou posuvných registrov
Matica LED pomocou posuvných registrov
Matica LED pomocou posuvných registrov
Matica LED pomocou posuvných registrov
Matica LED pomocou posuvných registrov

Tento návod má byť úplnejším vysvetlením ako ostatné dostupné online. Predovšetkým to poskytne viac hardvérového vysvetlenia, ako je k dispozícii v návode LED Marquee, ktorý môže inštalovať LED555.

Ciele

Tento inštruktážny program predstavuje koncepty súvisiace s posuvnými registrami a výškovými ovládačmi. Dúfam, že ilustráciou týchto konceptov pomocou matice LED 8x8 vám poskytnem nástroje potrebné na prispôsobenie a rozšírenie veľkosti a rozloženia, ktoré váš projekt vyžaduje.

Skúsenosti a zručnosti

Tento projekt by som ohodnotil ako stredne ťažký:

  • Ak už máte skúsenosti s programovaním mikrokontrolérov a prácou s LED diódami, dokončenie tohto projektu a jeho škálovanie do väčších polí svetiel by malo byť pomerne jednoduché.
  • Ak práve začínate s mikrokontrolérmi a zasvietila vám jedna alebo dve LED diódy, mali by ste byť schopní tento projekt dokončiť s pomocou našej priateľky google.
  • Ak máte malé alebo žiadne skúsenosti s mikrokontrolérmi alebo programovaním, pravdepodobne to presahuje rámec toho, do čoho by ste sa mali pustiť. Vyskúšajte niekoľko ďalších začiatočníckych projektov a vráťte sa, keď budete mať ďalšie skúsenosti s programami na písanie pre mikrokontroléry.

Vylúčenie zodpovednosti a kredit

Po prvé, nie som elektrotechnik. Ak nájdete niečo, čo je nesprávne alebo nie je osvedčený postup, dajte mi prosím vedieť a ja opravu urobím. Vykonajte to na vlastné riziko! Mali by ste vedieť, čo robíte, inak môžete poškodiť počítač, mikrokontrolér a dokonca aj seba. Veľa som sa naučil z internetu, najmä z fór na adrese: https://www.avrfreaks.net sada písem, ktorá sa dodáva s univerzálnou knižnicou C ks0108. Pozrite sa na to tu:

Krok 1: Diely

Zoznam položiek

Všeobecné diely

Na výrobu mriežky 8x8 diód LED a ich ovládanie budete potrebovať:

  • 64 LED diód podľa vášho výberu
  • 8 rezistorov pre diódy LED
  • 1 Posuvný register pre stĺpce
  • 1 Pole ovládačov pre riadky
  • 8 rezistorov na prepínanie poľa ovládačov
  • 1 mikrokontrolér
  • 1 hodinový zdroj pre mikrokontrolér
  • 1 prototypová doska
  • 1 napájací zdroj
  • Zapojovací drôt

Tu sú použité konkrétne diely

Na tento návod som použil nasledujúce:

  • 64 zelených LED diód (časť Mouser č. 604-WP7113GD)
  • 8 220 ohm odporov 1/4 watt pre LED (časť Mouser č. 660-CFS1/4CT52R221J)
  • 1 ovládač HEF4794 LED s posuvným registrom (časť Mouser č. 771-HEF4794BPN)
  • 1 mic2981 Pole vysokého napätia vodiča zdroja prúdu (časť Digikey č. 576-1158-ND)
  • 8 3,3 kohm 1/4 wattových rezistorov na prepínanie poľa ovládačov (časť Radio Shack #271-1328)
  • 1 mikrokontrolér Atmel ATmega8 (časť Mouser 556-ATMEGA8-16PU)
  • 1 kryštál 12 MHz pre zdroj hodín mikrokontroléra (časť Mouser č. 815-AB-12-B2)
  • 1 prototypová doska s 2 200 dierami (časť Radio Shack č. 276-147)
  • Premenený zdroj ATX: Pozrite si tento návod
  • Pripojovací drôt s pevným jadrom 22 AWG (časť Radio Shack #278-1221)
  • Bezpájkovacia doska (časť Radio Shack č. 276-169 (už nie je k dispozícii, skúste: 276-002)
  • AVR Dragon (časť Mouser č. 556-ATAVRDRAGON)
  • Dragon Rider 500 od spoločnosti Ecros Technologies: Pozrite si tento návod

Poznámky k častiam

Ovládače radov a stĺpcov: Pravdepodobne najťažšou súčasťou tohto projektu je výber ovládačov riadkov a stĺpcov. Po prvé, nemyslím si, že by tu bol štandardný posuvný register 74HC595 dobrý nápad, pretože nedokážu zvládnuť druh prúdu, ktorý chceme posielať prostredníctvom diód LED. Preto som si vybral ovládač HEF4794, pretože môže ľahko potopiť súčasný prúd, keď je zapnutých všetkých 8 LED v jednom rade. Posuvný register je prítomný na spodnej strane (uzemňovací kolík LED). Budeme potrebovať riadkový ovládač, ktorý dokáže získať dostatok prúdu na prepojenie viacerých stĺpcov dohromady. Mic2981 môže dodávať až 500mA. Jediná ďalšia časť, o ktorej som zistil, že vykonáva túto úlohu, je UDN2981 (časť číslo 620-1120-ND), ktorá je rovnakou súčasťou od iného výrobcu. Ak poznáte ďalšie high-side ovládače, ktoré by v tejto aplikácii dobre fungovali, pošlite mi správu. LED matica: Táto matica je 8x8, pretože riadkové a stĺpcové ovládače majú 8 pinov. Väčšie pole LED môže byť zostavené spojením viacerých matíc dohromady a bude diskutované v kroku „modulárnych konceptov“. Ak chcete veľké pole, objednajte si všetky potrebné diely naraz. K dispozícii je 8x8, 5x7 a 5x8 LED matíc v jednom praktickom balení. Tieto by mali byť ľahko nahraditeľné diétnou maticou. Ebay je pre ne dobrým zdrojom. Mouser má k dispozícii niekoľko jednotiek 5x7, napríklad časť č. 604-TA12-11GWA. Použil som lacné zelené LED diódy, pretože sa len hrám a bavím sa. Vynakladanie väčších nákladov na vysokosvietivé a vysoko účinné LED diódy vám umožní vytvoriť oveľa veľkolepejšie vyzerajúci displej … to je však pre mňa dosť dobré! Ovládací hardvér: Matica je riadená mikrokontrolérom Atmel AVR. Na to budete potrebovať programátor. Pretože prototypujem, používam Dragon Rider 500, pre ktorý som napísal návod na montáž a použitie. Je to jednoduchý nástroj na vytváranie prototypov a vrelo ho odporúčam.

Krok 2: Matica

Matrix
Matrix
Matrix
Matrix
Matrix
Matrix

Budem stavať svoju vlastnú LED maticu pre tento projekt pomocou 5 mm LED a prototypovej dosky od Radio Shack. Je potrebné poznamenať, že moduly LED s bodovou maticou 8x8 si môžete kúpiť z niekoľkých zdrojov vrátane ebay. S týmto pokynom by mali fungovať dobre.

Stavebné úvahy

ZarovnanieLED diódy je potrebné zarovnať tak, aby smerovali rovnakým smerom v rovnakom uhle. Našiel som pre mňa najľahšiu možnosť priložiť telo LED splachovania k doske a držať ho tam malým kúskom plexiskla a svorkou. Niekoľko palcov od radu, na ktorom som pracoval, som umiestnil niekoľko LED diód, aby som sa ubezpečil, že plexisklo je rovnobežné s prototypovou doskou. Riadky a stĺpce Musíme mať spoločné pripojenie pre každý riadok, ako aj pre každý stĺpec. Vzhľadom na to, že sme si vybrali radič a stĺpcový budič, musíme mať anódu (kladný vodič LED) spojenú s riadkom a katódu (záporný vodič LED) prepojenú so stĺpcom. Ovládacie drôty Pre tento prototyp používam zapojovací drôt s plným jadrom (jednovodičový). Rozhranie s bezspájkovou doskou bude veľmi jednoduché. Nebojte sa použiť iný typ konektora, aby vyhovoval vášmu projektu.

Budovanie matice

1. Umiestnite prvý stĺpec LEDS do prototypovacej dosky.2. Znovu skontrolujte, či je vaša polarita pre každú diódu LED správna. Bude ťažké to opraviť, ak si to neskôr uvedomíte. Pripojte oba vodiče LED k doske. Skontrolujte, či sú zarovnané správne (nie v podivných uhloch) a odpojte katódové zvody. Uistite sa, že neodpojíte anódový kábel, budeme ho potrebovať neskôr, takže ho nechajte nasmerovaný nahor. Odstráňte izoláciu z kusa drôtu s plným jadrom. Spájkujte tento kúsok drôtu na každú katódu priamo na úrovni dosky.

  • Zlepil som to na každom konci, potom som sa vrátil a na každom križovatke pridal trochu spájky.
  • Tento vodič by mal prechádzať okolo vašej poslednej LED diódy, aby sa zabezpečilo jednoduché rozhranie, keď pridáme ovládacie vodiče.

5. Opakujte diely 1-4, kým nebudete mať všetky LED diódy na svojom mieste a všetky stĺpové zbernice spájkované.6. Ak chcete vytvoriť radovú zbernicu, ohnite niekoľko anódových zvodov v uhle 90 stupňov, aby sa dotýkali ostatných anódových káblov v rovnakom rade.

  • Nižšie sú k tomu podrobné obrázky.
  • Dávajte pozor, aby sa tieto nedostali do kontaktu so stĺpikovými autobusmi, čím by sa vytvoril skrat.

7. Spájkujte vodiče na každom spoji a odstrihnite prebytočné anódové zvody.

Nechajte poslednú anódu trčať za konečnou diódou LED. To sa použije na pripojenie riadiacich vodičov radového ovládača

8. Opakujte časti 6 a 7, kým nebudú spájkované všetky rady autobusov.9. Pripojte ovládacie vodiče.

  • Na riadky som použil červený drôt s pevným jadrom a na stĺpce čierny.
  • Pripojte jeden vodič pre každý stĺpec a jeden pre každý riadok. To sa dá ľahko vykonať na konci každého autobusu.

Dôležité

Táto matica LED nemá žiadne odpory obmedzujúce prúd. Ak to vyskúšate bez rezistorov, pravdepodobne vám spália LED diódy a všetka táto práca bude nanič.

Krok 3: Ovládací hardvér

Riadiaci hardvér
Riadiaci hardvér
Riadiaci hardvér
Riadiaci hardvér

Musíme ovládať stĺpce a riadky našej matice LED. Matica bola skonštruovaná tak, aby anódy (napäťová strana LED) tvorili rady a katódy (uzemnená strana LED) tvorili stĺpce. To znamená, že náš riadkový ovládač potrebuje zdroj prúdu a náš stĺpcový ovládač ho musí potopiť. Aby som ušetril na kolíkoch, na ovládanie stĺpcov používam posuvný register. Týmto spôsobom môžem ovládať takmer neobmedzený počet stĺpcov iba pomocou štyroch pinov mikrokontroléra. Je možné použiť iba tri, ak je kolík Enable Output viazaný priamo na napätie. Vybral som ovládač LED HEF4794 s posuvným registrom. Toto je lepšia voľba ako štandardný 74HC595, pretože môže ľahko potopiť súčasný prúd, keď sú naraz rozsvietené všetky 8 diódy LED. Na vyššej strane (zdroj prúdu pre riadky) používam mic2981. Schéma ukazuje UDN2981, verím, že tieto dva sú zameniteľné. Tento ovládač môže napájať prúdom až 500mA. Pretože jazdíme iba 1 riadok naraz, dáva to veľa príležitostí na rozšírenie, až 33 stĺpcov pre tento čip (viac o tom v kroku „modulárne koncepty“).

Budovanie riadiaceho hardvéru

Pre tento návod som práve pridal tento okruh. Pre trvalejšie riešenie budete chcieť buď leptať vlastnú dosku s plošnými spojmi, alebo použiť dosku na prototypovanie. Radič

  • Umiestnite mic2981 (alebo UDN2981) na nepájivú dosku
  • Pripojte kolík 9 k napätiu (V schéme je to mätúce)
  • Pripojte kolík 10 k zemi (v schéme je to mätúce)
  • vložte odpory 3k3 pripojené k pinom 1-8
  • Pripojte z portu D ATmega8 (PD0-PD8) k 8 odporom
  • Pripojte 8-riadkové riadiace vodiče matice LED k pinom 11-18 (všimnite si, že najnižší rad LED diód som zapojil na pin 18 a najvyšší riadok na pin 11).

2. Ovládač stĺpca

  • Umiestnite hef4794 na breadboard
  • Pripojte kolík 16 k napätiu
  • Pripojte kolík 8 k zemi
  • Pripojte odpory 220 ohmov k pinom 4-7 a 11-14.
  • Pripojte 8 stĺpcových riadiacich vodičov z matice LED k 8 odporom, ktoré ste práve pripojili.
  • Pripojte Pin1 (západka) k PC0 na ATmega8
  • Pripojte Pin2 (dáta) k PC1 ATmega8
  • Pripojte Pin3 (hodiny) k PC2 ATmega8
  • Pripojte Pin15 (povolenie výstupu) k PC3 ATmega8

3. Hodinový kryštál

Pripojte kryštál 12 MHz a zaťažte kondenzátory podľa schémy

4. ISP

Pripojte programovaciu hlavičku podľa schémy

5. Filtračný kondenzátor a výsuvný odpor

  • Najlepšie je filtrovať napätie dodávané do ATmega8. Medzi pinmi 7 a 8 ATmega8 použite kondenzátor 0,1 ufa
  • Resetovací kolík by nemal byť ponechaný plávajúci, pretože to môže spôsobiť náhodné resety. Na pripojenie k napätiu použite odpor, čokoľvek okolo 1k by malo byť dobré. V schéme som použil 10k odpor.

6. Uistite sa, že používate regulovaný výkon +5V. Je len na vás, aký regulátor navrhnete.

Krok 4: Softvér

Trik

Áno, ako všetko, aj tu je trik. Ide o to, že nikdy nie je rozsvietených viac ako 8 diód LED naraz. Aby to fungovalo dobre, je potrebné trocha šikovného programovania. Koncept, ktorý som si zvolil, je použiť prerušenie časovača. Tu je návod, ako prerušenie displeja funguje v jednoduchej angličtine:

  • Časovač počíta až do určitého bodu, keď sa dosiahne rutinná služba prerušenia.
  • Táto rutina rozhoduje, ktorý riadok sa zobrazí ako nasledujúci.
  • Informácie pre nasledujúci riadok sa vyhľadajú z vyrovnávacej pamäte a posunú sa do ovládača stĺpca (tieto informácie nie sú "zablokované", takže sa ešte nezobrazujú).
  • Radič je vypnutý, v súčasnosti nesvietia žiadne diódy LED.
  • Stĺpcový ovládač je „zablokovaný“, aby v informáciách, ktoré sme posunuli pred dvoma krokmi, zobrazovali aktuálne informácie.
  • Riadkový ovládač potom poskytne prúd novému riadku, ktorý zobrazujeme.
  • Rutina služby prerušenia sa skončí a program sa vráti do normálneho toku až do ďalšieho prerušenia.

To sa deje veľmi rýchlo. Prerušenie sa vyvoláva každých 1 ms. To znamená, že obnovujeme celý displej zhruba raz za 8 mSec. To znamená, že zobrazovacia frekvencia je približne 125 Hz. Existujú určité obavy týkajúce sa jasu, pretože LED diódy v podstate prevádzkujú v pracovnom cykle 1/8 (sú vypnuté 7/8 času). V mojom prípade dostanem dostatočne jasný displej bez viditeľného blikania. Full LED displej je mapovaný v poli. Medzi prerušeniami je možné pole zmeniť (majte na pamäti atómovosť) a objaví sa na displeji počas nasledujúceho prerušenia. Špecifiká zápisu kódu pre mikrokontrolér AVR a spôsobu zápisu kódu na rozhovor s posuvnými registrami presahujú rámec. tohto pokynu. Zahrnul som zdrojový kód (napísaný v jazyku C a skompilovaný s AVR-GCC), ako aj hexadecimálny súbor na programovanie priamo. Komentoval som celý kód, aby ste to mohli použiť na objasnenie akýchkoľvek otázok o tom, ako dostať údaje do posuvného registra a ako funguje aktualizácia riadkov. Upozorňujeme, že používam súbor písma, ktorý bol dodaný s ks0108 univerzálna C knižnica. Knižnicu nájdete tu:

Posuvné registre: Ako na to

Rozhodol som sa pridať trochu o tom, ako programovať pomocou posuvných registrov. Dúfam, že tým sa vyjasnia veci pre tých, ktorí s nimi predtým nepracovali. Čo robiaShiftové registre odoberajú signál z jedného vodiča a odosielajú tieto informácie do mnohých rôznych pinov. V tomto prípade existuje jeden dátový vodič, ktorý preberá údaje, a 8 pinov, ktoré sú riadené v závislosti od toho, aké údaje boli prijaté. Aby to bolo lepšie, pre každý posuvný register existuje výstupný bod, ktorý je možné pripojiť k vstupnému kolíku iného posuvného registra. Toto sa nazýva kaskádovanie a robí z potenciálu expanzie takmer neobmedzenú perspektívu. Registry Control PinsShift majú 4 riadiace kolíky:

  • Západka - Tento kolík informuje posuvný register, keď je čas prejsť na novo zadané údaje
  • Údaje - 1 a 0 udávajú posuvnému registru, ktoré piny na aktiváciu sú prijaté na tomto pine.
  • Hodiny - Jedná sa o impulz odoslaný z mikrokontroléra, ktorý posúva posuvnému registru, aby vykonal čítanie údajov a prešiel na ďalší krok v komunikačnom procese.
  • Povoliť výstup - Toto je vypínač zap/vyp, High = On, Low = Off

Realizácia ponúk: Tu je rýchly kurz fungovania vyššie uvedených ovládacích kolíkov: Krok 1: Nastavte západku, údaje a hodiny na minimum

Nastavenie nízkej západky hovorí o posuvnom registri, do ktorého sa chystáme zapísať

Krok 2: Nastavte dátový kolík na logickú hodnotu, ktorú chcete odoslať do posuvného registra Krok 3: Nastavte kolíkový takt vysoko, aby ste posunovému registru povedali, aby prečítal aktuálnu hodnotu dátového pinu

Všetky ostatné hodnoty, ktoré sú aktuálne v posuvnom registri, sa posunú o 1 miesto, čím sa vytvorí priestor pre aktuálnu logickú hodnotu dátového kolíka

Krok 4: Nastavte kolík hodín na minimum a opakujte kroky 2 a 3, kým nebudú všetky údaje odoslané do posuvného registra.

Pred prepnutím na nasledujúcu hodnotu údajov je potrebné nastaviť hodinový kolík na nízku hodnotu. Prepínanie tohto kolíka medzi vysokou a nízkou hodnotou vytvára „hodinový impulz“, ktorý musí posuvný register vedieť, kedy má prejsť na ďalší krok v tomto procese

Krok 5: Nastavte západku vysoko

To hovorí posuvnému registru, aby zobral všetky údaje, ktoré boli posunuté, a použil ich na aktiváciu výstupných kolíkov. To znamená, že neuvidíte údaje, pretože sa menia v; kým nie je západka nastavená vysoko, nedôjde k žiadnej zmene výstupných kolíkov

Krok 6: Nastavte vysokú hodnotu Povoliť výstup

  • Bez ohľadu na to, čo sa deje s ostatnými tromi ovládacími kolíkmi, nebude existovať žiadny pinový výstup, kým nie je Enable Output nastavený na vysokú hodnotu.
  • Tento kolík môže byť vždy ponechaný vysoko, ak si to želáte

Na kaskádovanie môžete použiť dva piny, Os a Os1. Os je pre rýchlo rastúce hodiny a Os1 je pre pomaly rastúce hodiny. Pripojte tento kolík k dátovému kolíku nasledujúceho posuvného registra a pretečenie z tohto čipu sa zadá do nasledujúceho. Koniec aktualizácie

Adresovanie displeja

V príklade programu som vytvoril pole s 8 bytmi s názvom row_buffer . Každý bajt zodpovedá jednému riadku displeja 8x8, pričom riadok 0 je dolný a riadok 7 je horný. Najmenší významný bit v každom riadku je vpravo, najvýznamnejší bit vľavo. Zmena zobrazenia je rovnako jednoduchá ako zápis novej hodnoty do tohto poľa údajov, rutina služby prerušenia sa postará o obnovenie displeja.

Programovanie

Programovanie tu nebude podrobne rozoberané. Varoval by som vás, aby ste nepoužívali programovací kábel DAPA, pretože sa domnievam, že keď beží na 12 MHz, nebudete môcť programovať čip. Všetky ostatné štandardné programátory by mali fungovať (STK500, MKII, Dragon, paralelné/sériové programátory atď.) Poistky: Uistite sa, že sú poistky naprogramované tak, aby používali kryštálovú poistku 12 MHz: 0xC9, poistka: 0xEF

V akcii

Po naprogramovaní čipu by sa na displeji malo zobraziť „Hello World!“. Tu je video matice LED v akciách. Kvalita videa je dosť nízka, pretože som to urobil pomocou funkcie videa môjho digitálneho fotoaparátu, a nie správneho videa alebo webovej kamery.

Krok 5: Modulárne koncepty

Modulárne koncepty
Modulárne koncepty
Modulárne koncepty
Modulárne koncepty
Modulárne koncepty
Modulárne koncepty
Modulárne koncepty
Modulárne koncepty

Tento projekt je škálovateľný. Jediným skutočným obmedzujúcim faktorom bude to, koľko prúdu môže poskytnúť váš napájací zdroj. (Ďalšou realitou je, koľko LED diód a posúvačov registrov máte k dispozícii).

Matematika

LED diódy napájam približne 15mA (5V-1,8vDrop/220ohms = 14,5mA). To znamená, že môžem ovládať až 33 stĺpcov pomocou ovládača mic2981 (500mA/15mA = 33,3). Delené 8 vidíme, že nám to umožňuje spojiť dohromady 4 posuvné registre. Tiež vezmite do úvahy, že nemusíte mať všetkých 32 stĺpcov natiahnutých zľava doprava. Namiesto toho môžete vytvoriť pole 16x16, ktoré je zapojené rovnakým spôsobom ako pole 8x32. Toto by bolo možné vyriešiť posunutím o 4 bajty … prvé dva by sa posunuli až na diódy pre 9. riadok, druhé dva bajty by sa posunuli do prvého radu. Oba rady budú získavané jedným kolíkom na radovom ovládači.

Kaskádové posuvné registre

Použité posuvné registre sú kaskádové posuvné registre. To znamená, že keď posuniete údaje, na pine Os sa zobrazí pretečenie. Stáva sa to veľmi užitočným, pretože sadu posuvných registrov je možné navzájom prepojiť, osový kolík na dátový kolík, pričom ku každému novému čipu sa pridá 8 stĺpcov. Všetky posuvné registre sa pripoja k rovnakým kolíkom západky, hodín a povolení výstupných mikrokontrolér. Efekt „kaskádovania“sa vytvorí, keď je Os prvého posuvného registra pripojený k dátovému kolíku druhého. Programovanie bude potrebné zmeniť, aby odrážalo zvýšený počet stĺpcov. Vyrovnávacia pamäť, ktorá uchováva informácie, a funkcia, ktorá v každom stĺpci presúva informácie, je potrebné aktualizovať tak, aby odrážali skutočný počet stĺpcov. Schéma tohto postupu je uvedená nižšie.

Viacriadkové ovládače

Riadkový ovládač (mic2981) môže generovať dostatok prúdu na pohon 32 stĺpcov. Čo keď chcete viac ako 32 stĺpcov? Malo by byť možné použiť viacriadkové ovládače bez použitia ďalších kolíkov mikrokontroléra. Potrebujeme, aby riadkové ovládače poskytovali dostatok prúdu na osvetlenie diód LED. Ak používate viac stĺpcov, ako je možné naraz rozsvietiť, dodatočné riadkové ovládače môžu dodať potrebný prúd. Používajú sa rovnaké vstupné piny z mikrokontroléra, takže nie je potrebné meniť skenovanie riadkov. Inými slovami, každý ovládač riadi riadky pre blok 8x32. Aj keď 64 stĺpcov môže mať rovnaké FYZIKÁLNE umiestnenie riadkov, rozdeľujeme riadkové zbernice na dva, pričom používame jeden ovládač pre 8 radov prvých 32 stĺpcov a druhý ovládač pre 8 radov druhých 32 stĺpcov a tak ďalej. Schéma tohto je uvedená nižšie ako príklad. Možné chyby: 1. Nepoužívajte viacriadkové ovládače s rovnakým počtom stĺpcov. To by znamenalo, že každý kolík posuvného registra bude poháňať viac ako jednu diódu LED súčasne. Pre každý radový ovládač musíte mať sadu 8 odporov (3 k3), jedna sada pre viacriadkové ovládače nebude fungovať, pretože neposkytuje potrebný prúd na prepínanie brán.

Napríklad

Rozhodol som sa rozšíriť na maticu, ktorú som postavil predtým. Pridal som ďalších 7 riadkov pre celkom 15, pretože to je všetko, čo sa mi na tento protoboard zmestilo. Tiež som sa dozvedel o súťaži, ktorú robí Instructables, s názvom „Let it Glow“. Tu je video z môjho pohľadu na to. Digitálny fotoaparát, ktorým som robil video, opäť nerobí správne. Na ľudské oko to vyzerá skvele, najmä tam, kde blikajú všetky diódy LED, ale na videu to nevyzerá tak dobre. Užite si to: Zdrojový kód pre tento väčší displej je uvedený nižšie.

Krok 6: Záver

Možné doplnky

I2CI ponechal kolíky Two Wire Interface (I2C) v tomto prevedení nepoužité. Existuje niekoľko zaujímavých vyhliadok, ktoré môžu tieto dva piny využiť. Pridanie I2C EEPROM umožní ukladanie oveľa väčších správ. Existuje tiež perspektíva navrhnúť programovanie tak, aby sa z mega8 stal ovládač displeja kompatibilný s I2C. Tým by sa otvorila možnosť, aby zariadenie umožňujúce USB zobrazovalo údaje vo vašom poli LED tak, že ich prenesiete cez zbernicu I2C. Vstup Zostáva mnoho pinov, ktoré je možné použiť na tlačidlá alebo infračervený prijímač. To by umožnilo programovanie správ prostredníctvom systému ponúk. Displej Pre tento návod som implementoval iba niekoľko funkcií zobrazenia. Jeden iba zapisuje znaky na displej, druhý posúva znaky na displej. Dôležité je mať na pamäti, že to, čo vidíte na svetlách, je reprezentované v dátovom poli. Ak prídete na spôsoby, ako zmeniť dátové pole, pomocou sekačiek, svetlá sa zmenia rovnakým spôsobom. Niektoré dráždivé príležitosti zahŕňajú vytvorenie grafického metra zo stĺpcov. Toto môže byť použité ako stereo analyzátor signálu. Posúvanie je možné implementovať zhora nadol alebo zdola nahor, dokonca aj zľava doprava. Veľa šťastia, zabav sa!

Krok 7: Pokračujte

Nasleduj
Nasleduj
Nasleduj
Nasleduj
Nasleduj
Nasleduj
Nasleduj
Nasleduj

Potom, čo som nechal obvod ovládača sedieť niekoľko mesiacov v doske, nakoniec som navrhol a vyleptal niekoľko obvodových dosiek, aby bol tento prototyp zostavený. Všetko fungovalo skvele, myslím si, že neexistuje nič, čo by som urobil inak.

Vlastnosti obvodovej dosky

  • Posuvné registre sú na oddelených doskách, ktoré je možné za sebou zväčšiť, aby sa zväčšila veľkosť displeja.
  • Riadiaca doska má vlastný regulátor napájania, takže ho možno prevádzkovať akýmkoľvek zdrojom energie, ktorý poskytuje napätie 7 V-30 V (9 V batéria alebo 12 V stolné napájanie funguje pre mňa dobre).
  • 6 -kolíková hlavička ISP je súčasťou balenia, takže mikrokontrolér je možné preprogramovať bez toho, aby ste ho museli vyberať z dosky.
  • K dispozícii je 4-kolíkový konektor pre budúce použitie zbernice I2C. To by sa dalo použiť na eeprom na uloženie väčšieho počtu správ alebo dokonca na to, aby sa toto zariadenie stalo podradeným zariadením ovládaným iným mikrokontrolérom (niekto používa RSS ticker?)
  • Dizajn obsahuje 3 okamžité tlačidlá. V budúcnosti môžem firmvér vyladiť tak, aby zahŕňal používanie týchto tlačidiel.

zhromaždenie

Dajte mi plexisklo, uhlové konzoly, skrutky do stroja 6x32, matice a podložky, ako aj súpravu závitníkov na prevlečenie otvorov a ja môžem vytvoriť čokoľvek.

Druhá cena v hre Let It Glow!

Odporúča: