Obsah:
- Krok 1: Komponenty
- Krok 2: Prvé prototypy
- Krok 3: Návrh DPS
- Krok 4: Programovanie
- Krok 5: Testovanie
- Krok 6: Záver a ďalšie kroky
Video: Viacnásobný modul LED displeja: 6 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:59
Ahoj všetci, Rád pracujem s LED displejmi so 7 segmentmi alebo s bodovou maticou a už som s nimi robil mnoho rôznych projektov.
Zakaždým sú zaujímavé, pretože v tom, ako môžu fungovať, je nejaký druh mágie, pretože to, čo vidíte, je optická ilúzia!
Displeje majú veľa pinov na pripojenie k Arduinu (alebo inému mikrokontroléru) a najlepším riešením je použiť techniku multiplexovania dát, aby sa minimalizovalo využitie ich portov.
Keď to urobíte, každý segment alebo každá dióda LED sa na niekoľko okamihov (milisekúnd alebo menej) zapne, ale ich opakovanie toľkokrát za sekundu vytvára ilúziu obrazu, ktorý chcete zobraziť.
Pre mňa je najzaujímavejšie vyvinúť logiku, program, aby som zistil, ako môžu zobrazovať správne informácie podľa vášho projektu.
V jednom projekte používanie displejov vyžaduje veľa času na zostavenie všetkých komponentov na doske s mnohými vodičmi na pripojenie.
Viem, že na trhu beží mnoho rôznych displejov s I2C so zjednodušenými spôsobmi (alebo nie) na ich programovanie a tiež som ich použil, ale radšej pracujem so štandardnými komponentmi, ako sú 74HC595 (multiplexor IC) a ULN2803 (ovládače), pretože poskytnú vám väčšiu kontrolu nad vašim programom a tiež väčšiu robustnosť a spoľahlivosť pri vašom použití.
Aby som zjednodušil proces montáže, vyvinul som LED modul Dipslay na viacero účelov s použitím jednoduchých a bežných komponentov vo svete Arduina.
S týmto modulom môžete pracovať s bodovou maticou s dvojfarebnými LED diódami v dvoch štandardných veľkostiach (väčšej a menšej) a tiež môžete ovládať displej 7 seg x 4 číslic, ktoré sú na trhu veľmi bežné a ľahko dostupné.
A s týmito modulmi môžete pracovať aj kaskádovo sériovým spôsobom (rôzne údaje do displejov) alebo paralelným spôsobom (rovnaké údaje do displejov).
Pozrime sa teda, ako môže tento modul fungovať a pomôže vám vo vašom vývoji!
Video (modul LED displeja)
Video (test bodovej matice)
S pozdravom, LAGSILVA
Krok 1: Komponenty
PCB (doska s plošnými spojmi)
- 74HC595 (03 x)
- ULN2803 (02 x)
- Tranzistor PNP - BC327 (08 x)
- odpor 150 ohmov (16 x)
- odpor 470 ohmov (08 x)
- Kondenzátor 100 nF (03 x)
- IC zásuvka 16 pinov (03 x)
- IC zásuvka 18 pinov (02 x)
- Zásuvkový konektor samica - 6 pinov (8 x)
- Kolíkové hlavičky 90 ° (01 x)
- Kolíkové hlavičky 180 ° (01 x)
- kolíky Borne KRE 02 (02 x)
- DPS (01 x) - Vyrobené
Iní
- Arduino Uno R3 / Nano / podobné
- LED displej 04 číslic x 7 segmentov - (spoločná anóda)
- Dvojfarebná LED bodová matica (zelená a červená) - (spoločná anóda)
Dôležité poznámky:
- Dátový list všetkých najdôležitejších komponentov som vložil iba ako referenciu, ale pred použitím ich musíte skontrolovať.
- Táto doska bola navrhnutá tak, aby používala iba displeje COMMON ANODE.
Krok 2: Prvé prototypy
Môj prvý prototyp bol vyrobený na doske na testovanie obvodu.
Potom som urobil ďalší prototyp pomocou univerzálnej dosky, ako môžete vidieť na obrázkoch.
Tento druh dosky je zaujímavý na výrobu rýchleho prototypu, ale uvedomujete si, že stále obsahuje veľa drôtov.
Je to funkčné riešenie, ale nie také elegantné v porovnaní s konečným vyrobeným plošným spojom (modrý).
Nie som dobrý v spájkovaní, pretože nemám dostatok skúseností s týmto procesom, ale aj napriek tomu som dosiahol dobré výsledky s oboma skúsenosťami a čo je dôležitejšie: nespálil som žiadnu zložku ani svoje ruky!
Výsledky na mojej ďalšej palubovke budú pravdepodobne lepšie vďaka praxi.
Preto vás povzbudzujem, aby ste vyskúšali tento druh zážitku, pretože bude pre vás vynikajúci.
Majte na pamäti, že s horúcou žehličkou sa musíte starať a snažiť sa netráviť na súčiastke viac ako niekoľko sekúnd, aby ste ju nespálili !!
A nakoniec, na Youtube môžete nájsť veľa videí o spájkovaní, ktoré sa môžete naučiť predtým, ako pôjdete do skutočného sveta.
Krok 3: Návrh DPS
Túto DPS som navrhol pomocou špeciálneho softvéru na výrobu dvojvrstvovej dosky a pred touto poslednou bolo vyvinutých niekoľko rôznych verzií.
Na začiatku som mal jednu verziu pre každý druh displejov a koniec koncov som sa rozhodol spojiť všetko do jednej verzie.
Dizajnové ciele:
- Jednoduché a užitočné pre prototypy.
- Jednoduché nastavenie a rozšírenie.
- Je schopný používať 3 rôzne druhy displejov.
- Maximálna šírka veľkej bodovej matice LED.
- Maximálna dĺžka 100 mm, aby sa minimalizovali výrobné náklady dosky.
- Naneste tradičné súčiastky namiesto SMD, aby ste sa vyhli ďalším ťažkostiam pri procese ručného spájkovania.
- Doska musí byť modulárna, aby mohla byť prepojená s inými doskami v kaskáde.
- Sériový alebo paralelný výstup pre ďalšie dosky.
- Niekoľko dosiek musí ovládať iba Arduino.
- Iba 3 vodiče údajov pre pripojenie Arduino.
- Externé 5V napájanie.
- Zvýšte elektrickú odolnosť použitím tranzistorov a ovládačov (ULN2803) na ovládanie LED diód.
Poznámka:
V súvislosti s touto poslednou položkou vám odporúčam prečítať si môj ďalší návod na používanie týchto komponentov:
Použitie posuvného registra 74HC595 s ULN2803, UDN2981 a BC327
Výroba DPS:
Po dokončení návrhu som ho odoslal výrobcovi PCB v Číne po mnohých vyhľadávaniach u rôznych miestnych dodávateľov a v rôznych krajinách.
Hlavný problém súvisel s počtom dosiek proti nákladom, pretože ich potrebujem len niekoľko.
Nakoniec som sa rozhodol zadať pravidelnú objednávku (nie expresnú objednávku kvôli vyšším nákladom) iba 10 dosiek u spoločnosti v Číne.
Po iba 3 dňoch boli dosky vyrobené a odoslané ku mne po celom svete za ďalšie 4 dni.
Výsledky boli vynikajúce !!
Do týždňa po objednávke boli dosky v mojich rukách a bola som ohromená ich vysokou kvalitou a vysokou rýchlosťou!
Krok 4: Programovanie
Pri programovaní musíte mať na pamäti niektoré dôležité koncepty hardvérového dizajnu a posuvného registra 74HC595.
Hlavnou funkciou 74HC595 je transformácia 8-bitového sériového vstupu na 8 paralelný výstupný posun.
Všetky sériové údaje prechádzajú na kolík č. 14 a pri každom hodinovom signáli bity prechádzajú na zodpovedajúce paralelné vývody (Qa až Qh).
Ak budete nepretržite odosielať ďalšie údaje, bity sa budú jeden po druhom presúvať na pin #9 (Qh ') opäť ako sériový výstup a vďaka tejto funkcii môžete zapojiť ďalšie kaskádovo zapojené čipy.
Dôležité:
V tomto projekte máme tri integrované obvody 74HC595. Prvé dva fungujú na riadenie stĺpcov (s POZITÍVNOU logikou) a posledný na ovládanie liniek (s NEGATÍVNOU logikou kvôli fungovaniu tranzistorov PNP).
Pozitívna logika znamená, že musíte poslať signál VYSOKEJ úrovne (+5 V) z Arduina a negatívna logika znamená, že musíte odoslať signál LOW level (0 V).
Bodová matica diód LED
- Prvá je pre výstupy katód červených diód LED (8 x) >> COLUMN RED (1 až 8).
- Druhý je pre výstup L katód zelených LED diód (8 x) >> COLUMN GREEN (1 až 8).
- Posledný je pre výstup anód všetkých LED diód (08 x červená a zelená) >> LINKY (1 až 8).
Ak napríklad chcete zapnúť iba zelenú diódu LED stĺpca 1 a riadku 1, musíte odoslať nasledujúcu postupnosť sériových údajov:
1º) LINKY
~ 10 000 000 (iba prvý riadok je zapnutý) - Symbol ~ znamená invertovanie všetkých bitov od 1 do 0 a naopak.
2º) STĹPEC Zelená
10 000 000 (iba prvý stĺpec zelenej diódy LED je zapnutý)
3º) COLUMN RED
00000000 (všetky stĺpce červených LED diód sú vypnuté)
Vyhlásenia Arduino:
shiftOut (dataPin, clockPin, LSBFIRST, ~ B10000000); // Negatívna logika pre riadky
shiftOut (dataPin, clockPin, LSBFIRST, B10000000); // Pozitívna logika pre zelené stĺpce
shiftOut (dataPin, clockPin, LSBFIRST, B00000000); // Pozitívna logika pre červené stĺpce
Poznámka:
Môžete tiež skombinovať obe diódy LED (zelenú a červenú) a vytvoriť tak ŽLUTÚ farbu takto:
shiftOut (dataPin, clockPin, LSBFIRST, ~ B10000000);
shiftOut (dataPin, clockPin, LSBFIRST, B10000000);
shiftOut (dataPin, clockPin, LSBFIRST, B10000000);
7 Segmentový displej
Pre tieto druhy displejov je postupnosť rovnaká. Jediným rozdielom je, že nemusíte používať zelené LED diódy.
1º) DIGIT (1 až 4 zľava doprava) ~ 10 000 000 (nastavte číslicu č. 1)
~ 01000000 (nastavená číslica č. 2)
~ 00100000 (nastavená číslica č. 3)
~ 00010000 (nastavená číslica č. 4)
2º) NEPOUŽÍVANÉ
00000000 (všetky bity nastavené na nulu)
3º) SEGMENTY (A až F a DP - skontrolujte údajový list)
10 000 000 (nastaviť segment A)
01000000 (nastaviť segment B)
00100000 (nastaviť segment C)
00010000 (nastaviť segment D)
00001000 (nastaviť segment E)
00000100 (nastaviť segment F)
00000010 (nastavený segment G)
00000001 (nastavené DP)
Príklad Arduina na nastavenie displeja č. 2 na číslo 3:
shiftOut (dataPin, clockPin, LSBFIRST, ~ B01000000); // Nastavenie DISPLAY 2 (negatívna logika)
shiftOut (dataPin, clockPin, LSBFIRST, 0); // Nastavte údaje na nulu (nepoužíva sa)
shiftOut (dataPin, clockPin, LSBFIRST, B11110010); // Nastavenie segmentov A, B, C, D, G)
Nakoniec pomocou tohto procesu môžete ovládať ľubovoľnú diódu LED na displeji a tiež môžete vytvoriť akékoľvek špeciálne znaky, ktoré potrebujete.
Krok 5: Testovanie
Tu sú dva programy ako príklad funkčnosti zobrazovacieho modulu.
1) Displej odpočítavania (od 999,9 sekundy do nuly)
2) Bodová matica (číslice 0 až 9 a abeceda A až Z)
3) Digitálne hodiny RTC na LED displeji so 4 číslicami a 7 segmentmi
Tento posledný je aktualizáciou mojej prvej verzie digitálnych hodín.
Krok 6: Záver a ďalšie kroky
Tento modul bude užitočný vo všetkých budúcich projektoch, ktoré vyžadujú určitý LED displej.
Ako ďalšie kroky zostavím viac niektorých dosiek, aby som s nimi mohol pracovať v kaskádovom režime, a tiež vyviniem knižnicu, ktorá ešte viac zjednoduší programovanie.
Dúfam, že sa vám tento projekt páčil.
Pošlite mi svoje pripomienky, pretože je to dôležité pre zlepšenie projektu a informácií v tomto návode.
S pozdravom, LAGSILVA
26. máj 2016
Odporúča:
Viacnásobný port USB bez akejkoľvek dosky plošných spojov: 4 kroky
Viacnásobný port USB bez akejkoľvek dosky plošných spojov: Toto je môj druhý návod a tu sa s vami podelím o projekt, v ktorom môžete vytvoriť viac portov USB na použitie vo svojom počítači, pretože keď pracujete z domu, máte veľký problém s používaním mnohých zariadení, pretože väčšina zariadení teraz h
Viacnásobný programátor ATtiny85/13A: 6 krokov
Viacnásobný programátor ATtiny85/13A: Už ste niekedy urobili projekt ako „automatické svetlo LDR x Arduino UNO Automatic“alebo podobné, ktoré používa iba 2-3 digitálne vstupno-výstupné porty vášho 32-pinového mikrokontroléra? Je to v poriadku, ak robíte iba niektoré prototypovanie, ale čo keď chcete dokončiť alebo vyrobiť
Ako-MODUL DISPLEJA E-INK E-PAPIERA-časť 1: 6 krokov
Ako-MODUL DISPLEJA E-INK E-PAPIERA-Časť 1: V tomto návode by som vám chcel predstaviť modul E-Ink E-Paper, ktorý som nedávno objavil. Je to tak skvelé! Tento modul zobrazovania E-atramentu je špeciálne vyrobený pre vývoj E-atramentu. Nemusíte stavať žiadny ďalší obvod a
Ako-MODUL DISPLEJA E-INK E-PAPIERA-3. časť - WiFi: 7 krokov (s obrázkami)
Ako-MODUL DISPLEJA E-INK E-PAPIERA-3. časť | WiFi: V tomto návode na časť 3 Ako-MODUL DISPLEJA E-INK E-PAPERU sa s vami podelím o to, ako pripojiť váš zobrazovací modul E-Ink k modulu WiFi, ktorý umožňuje aktualizáciu textov prostredníctvom WiFi. Nemáte modul E-Ink Display Module? Môžete získať jednu hodinu
Viacnásobný stojan na gitaru!: 5 krokov
Viacnásobný stojan na gitaru a roll!: Tento návod je určený pre 6 -násobný stojan / stojan na gitary s valčekmi. Ako si vyrobiť vlastný stojan / stojan na gitaru z materiálov, ktoré sa povaľujú po vašom dvore. Aspoň mám na svojom dvore toľko harabúrd, že by som pravdepodobne dokázal vyrobiť M