Taula de continguts:

Mòdul de pantalla LED múltiple: 6 passos (amb imatges)
Mòdul de pantalla LED múltiple: 6 passos (amb imatges)

Vídeo: Mòdul de pantalla LED múltiple: 6 passos (amb imatges)

Vídeo: Mòdul de pantalla LED múltiple: 6 passos (amb imatges)
Vídeo: 10 привычек, чтобы стать счастливым 2024, De novembre
Anonim
Image
Image
Mòdul de pantalla LED múltiple
Mòdul de pantalla LED múltiple
Mòdul de pantalla LED múltiple
Mòdul de pantalla LED múltiple

Hola a tots, M'agrada treballar amb pantalles LED amb 7 segments o amb matriu de punts i ja vaig fer molts projectes diferents amb ells.

Sempre que són interessants perquè hi ha alguna mena de màgia en com poden funcionar perquè el que veieu és una il·lusió òptica.

Les pantalles tenen molts pins per a la connexió amb un Arduino (o un altre microcontrolador) i la millor solució és aplicar les tècniques de multiplexació de dades per minimitzar l’ús dels seus ports.

Quan feu això, cada segment o cada LED s’encendran durant uns quants instants (mil·lisegons o menys), però la seva repetició en tantes vegades per segon crea la il·lusió de la imatge que voleu que es mostri.

Per a mi, el més interessant és desenvolupar la lògica, el programa per esbrinar com poden mostrar la informació correcta segons el vostre projecte.

En un sol projecte, utilitzar pantalles requereix molt de temps per muntar tots els components en una placa amb molts cables per a connexions.

Sé que hi ha moltes pantalles diferents que funcionen amb I2C al mercat, amb formes simplificades (o no) de programar-les i també les he fet servir, però prefereixo treballar amb components estàndard com 74HC595 (multiplexor IC) i ULN2803 (controladors) perquè us donen més control al vostre programa i també més robustesa i fiabilitat en la vostra utilització.

Per simplificar el procés de muntatge, he desenvolupat un mòdul LED Dipslay per a múltiples propòsits utilitzant components simples i comuns al món d'Arduino.

Amb aquest mòdul podeu treballar amb matriu de punts amb LEDs de doble color en dues mides estàndard (més grans i més petites) i també podeu controlar la pantalla de 7 x 4 dígits que són molt habituals i fàcils de trobar al mercat.

I també podeu treballar amb aquests mòduls en cascada de manera sèrie (diferents dades en pantalles) o en paral·lel (les mateixes dades en pantalles).

Vegem, doncs, com pot funcionar aquest mòdul i ajudar-lo en els seus desenvolupaments.

Vídeo (mòdul de visualització LED)

Vídeo (prova de matriu de punts)

Salutacions, LAGSILVA

Pas 1: components

Components
Components
Components
Components
Components
Components
Components
Components

PCB (placa de circuit imprès)

- 74HC595 (03 x)

- ULN2803 (02 x)

- Transistor PNP - BC327 (08 x)

Resistència de 150 ohms (16 x)

Resistència de 470 ohms (08 x)

Condensador 100 nF (03 x)

Socket IC 16 pins (03 x)

Socket IC 18 pins (02 x)

- Connector de pin femella - 6 pins (8 x)

- Capçaleres de pin 90º (01 x)

- Capçaleres de pin 180º (01 x)

Conector Borne KRE 02 pins (02 x)

- PCB (01 x) - Fabricat

Altres

- Arduino Uno R3 / Nano / similar

- Pantalla LED 04 dígits x 7 segments - (ànode comú)

- Matriu de punts LED de doble color (verd i vermell) - (ànode comú)

Observacions importants:

  1. He posat el full de dades de tots els components més importants només com a referència, però heu de comprovar el full de dades dels vostres propis components abans d’utilitzar-los.
  2. Aquest tauler va ser dissenyat per utilitzar només pantalles d'ÀNODE COMUN.

Pas 2: primers prototips

Primers prototips
Primers prototips
Primers prototips
Primers prototips
Primers prototips
Primers prototips
Primers prototips
Primers prototips

El meu primer prototip es va fer en una taula de proves per provar el circuit.

Després vaig fer un altre prototip amb un tauler universal, tal com es pot veure a les imatges.

Aquest tipus de tauler és interessant per produir un prototip ràpid, però t’adones que encara es conserven molts cables.

És una solució funcional però no tan elegant en comparació amb un PCB fabricat final (el blau).

No sóc bo amb la soldadura perquè no tinc prou experiència amb aquest procés, però fins i tot he obtingut bons resultats amb les dues experiències i més important: no he cremat cap component ni les mans.

Probablement, els resultats del meu proper tauler seran millors a causa de la pràctica.

Per això, us animo a provar aquest tipus d’experiència perquè serà excel·lent per a vosaltres.

Només cal tenir en compte tenir cura amb la planxa calenta i intentar no passar més de pocs segons en un component per evitar cremar-lo !!

I, finalment, a Youtube podeu trobar molts vídeos sobre soldadura que podeu aprendre abans d’anar al món real.

Pas 3: disseny de PCB

Disseny de PCB
Disseny de PCB
Disseny de PCB
Disseny de PCB
Disseny de PCB
Disseny de PCB
Disseny de PCB
Disseny de PCB

Vaig dissenyar aquest PCB usant un programari dedicat per produir una placa de doble capa i es va desenvolupar diverses versions diferents abans d'aquesta última.

Al principi, tenia una versió per a cada tipus de pantalla i, al cap i a la fi, vaig decidir combinar-ho tot en una sola versió.

Objectius de disseny:

  • Senzill i útil per a prototips.
  • Configuració fàcil i expansible.
  • Capaç d'utilitzar 3 tipus diferents de pantalles.
  • Amplada màxima de la gran matriu de punts del LED.
  • Llargada màxima a 100 mm per minimitzar els costos de producció del tauler.
  • Apliqueu components tradicionals en lloc de SMD per evitar més dificultats durant el procés de soldadura manual.
  • La placa ha de ser modular per poder connectar-la amb altres plaques en cascada.
  • Sortida en sèrie o paral·lel per a altres plaques.
  • Només un Arduino ha de controlar diverses taules.
  • Només hi ha 3 cables de dades per a la connexió d'Arduino.
  • Connexió d'alimentació externa de 5V.
  • Augmenteu la robustesa elèctrica aplicant transistors i controladors (ULN2803) per controlar els LEDS.

Observació:

Relacionat amb aquest darrer ítem, us recomano que llegiu altres instruccions sobre aquests components:

Mitjançant Shift Register 74HC595 amb ULN2803, UDN2981 i BC327

Fabricació de PCB:

Després d'acabar el disseny, el vaig enviar a un fabricant de PCB a la Xina després de fer moltes cerques amb diferents proveïdors locals i en diferents països.

El problema principal estava relacionat amb la quantitat de taulers i el cost, ja que només en necessito alguns.

Finalment, vaig decidir fer una comanda regular (no una comanda expressa a causa de costos més elevats) de només 10 taules amb una empresa de la Xina.

Després de només 3 dies, les taules es van fabricar i em van enviar creuant el món en més de 4 dies.

Els resultats van ser excel·lents !!

En una setmana després de la comanda de compra, les taules eren a les meves mans i em va impressionar molt l’alta qualitat i la rapidesa.

Pas 4: Programació

Programació
Programació
Programació
Programació

Per a la programació heu de tenir en compte alguns conceptes importants sobre el disseny del maquinari i sobre el registre de desplaçament 74HC595.

La funció principal de 74HC595 és transformar 8-Bit Serial-In en 8 Parallel-Out Shift.

Totes les dades de sèrie van al pin núm. 14 i a cada senyal de rellotge els bits van als seus corresponents pins paral·lels (Qa a Qh).

Si continueu enviant més dades, els bits es mouran un per un al Pin # 9 (Qh ') com a sortida serial de nou i degut a aquesta funcionalitat podeu posar altres xips connectats en cascada.

Important:

En aquest projecte tenim tres CI de 74HC595. Els dos primers treballen per controlar les columnes (amb lògica POSITIVA) i l'últim per controlar les línies (amb lògica NEGATIVA a causa del funcionament dels transistors PNP).

La lògica positiva significa que heu d’enviar un senyal de nivell ALT (+ 5V) des d’Arduino i la lògica negativa voleu enviar un senyal de nivell BAIX (0V).

Matriu de punts de LEDs

  1. El primer és per a les sortides dels càtodes dels LED vermells (8 x) >> COLUMN RED (1 a 8).
  2. El segon és per a la sortida L dels càtodes de LEDs verds (8 x) >> COLUMN GREEN (1 a 8).
  3. L'últim és per a la sortida d'ànodes de tots els LED (08 x vermell i verd) >> LÍNIES (1 a 8).

Per exemple, si voleu activar només el LED verd de la columna 1 i la línia 1, heu d'enviar la següent seqüència de dades en sèrie:

1º) LÍNIES

~ 10000000 (només la primera línia està activada): el símbol ~ és invertir tots els bits de 1 a 0 i viceversa.

2º) COLUMNA Verda

10000000 (només la primera columna de LED verd està activada)

3º) COLUMNA VERMELL

00000000 (totes les columnes dels LED vermells estan apagats)

Afirmacions Arduino:

shiftOut (dataPin, clockPin, LSBFIRST, ~ B10000000); // Lògica negativa per a les línies

shiftOut (dataPin, clockPin, LSBFIRST, B10000000); // Lògica positiva per a les columnes Verdes

shiftOut (dataPin, clockPin, LSBFIRST, B00000000); // Lògica positiva per a les columnes vermelles

Observació:

També podeu combinar els dos LED (verd i vermell) per produir el color GROC de la següent manera:

shiftOut (dataPin, clockPin, LSBFIRST, ~ B10000000);

shiftOut (dataPin, clockPin, LSBFIRST, B10000000);

shiftOut (dataPin, clockPin, LSBFIRST, B10000000);

Visualització de 7 segments

Per a aquest tipus de pantalles, la seqüència és la mateixa. L'única diferència és que no cal utilitzar els LED verds.

1º) DIGIT (1 a 4 d'esquerra a dreta) ~ 10000000 (dígit # 1)

~ 01000000 (dígit definit # 2)

~ 00100000 (dígit definit # 3)

~ 00010000 (dígit definit # 4)

2º) NO ÚS

00000000 (tots els bits es posen a zero)

3º) SEGMENTS (A a F i DP: comproveu el full de dades de la pantalla)

10000000 (segment del segment A)

01000000 (segment del segment B)

00100000 (segment del segment C)

00010000 (fixa el segment D)

00001000 (segment del segment E)

00000100 (segment del segment F)

00000010 (segment del segment G)

00000001 (conjunt DP)

Exemple d'Arduino per configurar la pantalla # 2 amb el número 3:

shiftOut (dataPin, clockPin, LSBFIRST, ~ B01000000); // Estableix DISPLAY 2 (lògica negativa)

shiftOut (dataPin, clockPin, LSBFIRST, 0); // Estableix les dades a zero (no s’utilitza)

shiftOut (dataPin, clockPin, LSBFIRST, B11110010); // Estableix els segments A, B, C, D, G)

Finalment, aplicant aquest procés, podeu controlar qualsevol LED de la pantalla i també podeu crear els caràcters especials que necessiteu.

Pas 5: proves

Proves
Proves
Proves
Proves
Proves
Proves

Aquí hi ha dos programes com a exemple de funcionalitat del mòdul de visualització.

1) Visualització del compte enrere (de 999,9 segons a zero)

2) Matriu de punts (dígits 0 a 9 i alfabet A a Z)

3) Rellotge digital RTC en pantalla LED de 4 dígits i 7 segments

Aquesta última és una actualització de la meva primera versió de Digital Clock.

Pas 6: Conclusió i passos següents

Conclusió i passos següents
Conclusió i passos següents
Conclusió i passos següents
Conclusió i passos següents

Aquest mòdul serà útil en tots els futurs projectes que requereixin una pantalla LED.

Com a passos següents, reuniré més taulers per treballar amb ells en mode cascada i desenvoluparé també una biblioteca per simplificar encara més la programació.

Espero que us hagi agradat aquest projecte.

Si us plau, envieu-me els vostres comentaris perquè això és important per millorar el projecte i la informació d’aquest Instructible.

Salutacions, LAGSILVA

26 de maig de 2016

Recomanat: