Taula de continguts:

Control de la pantalla de set segments mitjançant Arduino i el registre de canvis 74HC595: 6 passos
Control de la pantalla de set segments mitjançant Arduino i el registre de canvis 74HC595: 6 passos

Vídeo: Control de la pantalla de set segments mitjançant Arduino i el registre de canvis 74HC595: 6 passos

Vídeo: Control de la pantalla de set segments mitjançant Arduino i el registre de canvis 74HC595: 6 passos
Vídeo: Program for the shop 2024, De novembre
Anonim
Image
Image

Ei, què passa, nois! Akarsh aquí des de CETech.

Les pantalles de set segments són bons per mirar-les i sempre són una eina útil per mostrar dades en forma de dígits, però hi ha un inconvenient que és que quan controlem una pantalla de set segments en realitat estem controlant 8 LED diferents i per controlar necessitem sortides diferents per a cadascun d’ells, però si fem servir un pin GPIO separat per a cadascun dels LEDs de la pantalla de set segments, és possible que ens enfrontem a una manca de pins del nostre microcontrolador i, en última instància, no ens quedarà cap lloc per fer altres connexions importants. Pot semblar-vos un gran problema, però la solució a aquest problema és molt senzilla. Només hem d’utilitzar l’IC del registre de canvis 74HC595. Es pot utilitzar un únic IC 74HC595 per proporcionar sortides a 8 punts diferents, a part que també podem connectar diversos ICs i utilitzar-los per controlar un gran nombre de dispositius, consumint només 3 pins GPIO del vostre microcontrolador.

Per tant, en aquest projecte, farem servir un CI de registre de desplaçament 74HC595 amb Arduino per controlar una pantalla de set segments només mitjançant 3 pins GPIO de l’Arduino i entendre com pot ser que aquesta IC sigui una gran eina.

Pas 1: fabriqueu PCB per als vostres projectes

Quant al registre de torns 74HC595
Quant al registre de torns 74HC595

Heu de comprovar PCBWAY per demanar PCB en línia de manera econòmica.

Obteniu 10 PCB de bona qualitat fabricats i enviats a casa vostra de manera econòmica. També obtindreu un descompte en l’enviament de la primera comanda. Pengeu els fitxers Gerber a PCBWAY per fabricar-los amb una bona qualitat i un temps de resposta ràpid. Consulteu la seva funció de visor Gerber en línia. Amb punts de recompensa, podeu obtenir articles gratuïts a la seva botiga de regals.

Pas 2: aproximadament 74HC595 Registre de torns

Quant al registre de torns 74HC595
Quant al registre de torns 74HC595

Un registre de canvis 74HC595 és un IC SIPO de 16 pins. SIPO significa Serial In i Parallel Out, que significa que pren l'entrada en sèrie un bit a la vegada i proporciona sortida de manera paral·lela o simultània a tots els pins de sortida. Sabem que els registres Shift solen utilitzar-se amb finalitats d’emmagatzematge i que la propietat dels registres s’utilitza aquí. Les dades es llisquen a través del pin d'entrada sèrie i passen al primer pin de sortida i romanen allà fins que entra una altra entrada dins del CI tan bon punt es rebi una altra entrada, l'entrada emmagatzemada prèviament passa a la següent sortida i arriben les dades introduïdes recentment al primer passador. Aquest procés continua fins que l’emmagatzematge de l’IC no és complet, és a dir, fins que no es reben 8 entrades. Però quan l’emmagatzematge IC s’omple tan bon punt rep la novena entrada, la primera entrada surt pel pin QH si hi ha un altre registre de desplaçament encadenat al registre actual a través del pin QH, les dades passen a aquest registreu-vos en cas contrari, es perd i les dades entrants continuen entrant lliscant les dades emmagatzemades anteriorment. Aquest procés es coneix com a Desbordament. Aquesta IC utilitza només 3 pins GPIO per connectar-se al microcontrolador i, per tant, en consumir només 3 pins GPIO del microcontrolador, podem controlar infinits dispositius encadenant una sèrie d’aquests IC entre si.

Un exemple del món real que utilitza el registre de canvis és el "controlador original de Nintendo". El controlador principal del sistema d’entreteniment de Nintendo necessitava prémer tots els botons en sèrie i feia servir un registre de desplaçament per realitzar aquesta tasca.

Pas 3: Pinça el diagrama de 74HC595

Esquema de pins de 74HC595
Esquema de pins de 74HC595

Tot i que aquest CI està disponible en diverses varietats i models, parlarem aquí del Pinout of Texas Instruments SN74HC595N IC. Per obtenir informació més detallada sobre aquest CI, podeu consultar el seu full de dades des d’aquí.

El Shift Register IC té els pins següents: -

1) GND: aquest pin està connectat al pin de terra del microcontrolador o a la font d'alimentació.

2) Vcc: aquest pin està connectat al Vcc del microcontrolador o de la font d'alimentació, ja que és un circuit lògic de nivell de 5V. És preferible la font d'alimentació de 5V.

3) SER: són les dades del pin d'entrada sèrie que s'introdueixen de forma serial a través d'aquest pin, és a dir, s'introdueix un bit a la vegada.

4) SRCLK: és el pin de rellotge Shift Register. Aquest pin actua com el rellotge del registre de canvis a mesura que s'aplica el senyal de rellotge a través d'aquest pin. Com que l’IC és un cantó positiu que s’activa per desplaçar els bits al registre de majúscules, aquest rellotge ha de ser ALT.

5) RCLK: és el pin de registre de rellotge. És un pin molt important perquè per poder observar les sortides dels dispositius connectats a aquests circuits integrats hem d’emmagatzemar les entrades al pestell i, per a això, el pin RCLK ha de ser ALT.

6) SRCLR: és el pin clar del registre de canvis. S'utilitza sempre que necessitem esborrar l'emmagatzematge del registre Shift. Estableix els elements emmagatzemats al registre a 0 alhora. És un Pin lògic negatiu, per tant, sempre que necessitem esborrar el registre, hem d'aplicar un senyal BAIX en aquest pin, en cas contrari, s'hauria de mantenir a HIGH.

7) OE- És el pin d’activació de sortida. És un pin lògic negatiu i sempre que aquest pin es posa a HIGH, el registre es posa en un estat d'impedància elevat i les sortides no es transmeten. Per obtenir les sortides, hem d’establir aquest pin a mínim.

8) Q1-Q7 - Aquests són els pins de sortida i cal connectar-los a algun tipus de sortida com ara LEDs i pantalla de set segments, etc.

9) QH ': aquest pin hi és de manera que podem encadenar aquests circuits integrats si connectem aquest QH' al pin SER d'un altre CI i donem als dos CI el mateix senyal de rellotge, es comportaran com un únic IC amb 16 sortides. Per descomptat, aquesta tècnica no es limita a dos circuits integrats: podeu encadenar tants com vulgueu si teniu prou potència per a tots ells.

Pas 4: Connexió de la pantalla amb Arduino mitjançant 74HC595

Connexió de la pantalla amb Arduino mitjançant 74HC595
Connexió de la pantalla amb Arduino mitjançant 74HC595
Connexió de la pantalla amb Arduino mitjançant 74HC595
Connexió de la pantalla amb Arduino mitjançant 74HC595

Per tant, ara tenim prou coneixement sobre l’IC de registre de desplaçament, de manera que anirem a la part d’implementació. En aquest pas, farem les connexions per tal de controlar SSD amb Arduino mitjançant 74HC595 IC.

Material necessari: Arduino UNO, pantalla de set segments, CI de registre de canvis 74HC595, cables de pont.

1) Connecteu l'IC a SSD de la manera següent: -

  • PIN IC núm. 1 (Q1) per mostrar el pin del segment B mitjançant una resistència.
  • PIN IC núm. 2 (Q2) per mostrar el pin del segment C mitjançant una resistència.
  • Pin IC núm. 3 (Q3) per mostrar el pin del segment D mitjançant una resistència.
  • Pin IC núm. 4 (Q4) per mostrar el pin del segment E mitjançant una resistència.
  • Pin IC núm. 5 (Q5) per mostrar el pin del segment F mitjançant una resistència.
  • Pin IC núm. 6 (Q6) per mostrar el pin del segment G mitjançant una resistència.
  • PIN IC núm. 7 (Q7) per mostrar el pin del segment Dp mitjançant una resistència.
  • Passador comú a la pantalla, tant per a l'alimentació com per al carril de terra. Si teniu una pantalla d'ànode comuna, connecteu-la al carril d'alimentació; en cas contrari, la connexió a una pantalla de càtode comuna al carril de terra

2) Connecteu el pin núm. 10 (registre del pin clar) de l'IC al carril d'alimentació. Evitarà que el registre s’esborri ja que es tracta d’un pin baix actiu.

3) Connecteu el pin núm. 13 (pin d'activació de sortida) de l'IC al rail de terra. És un pin actiu-alt, per tant, quan es manté a un nivell baix, permetrà a l'IC donar sortides.

4) Connecteu el pin 2 d'Arduino al pin 12 (Pin del pestell) de l'IC.

5) Connecteu el pin 3 d'Arduino al pin14 (pin de dades) de l'IC.

6) Connecteu el pin Arduino 4 al pin11 (pin de rellotge) de l’IC.

7) Connecteu Vcc i GND de l'IC al de l'Arduino.

Després de fer totes aquestes connexions, acabareu amb un circuit similar al de la imatge superior i, després de tots aquests passos, heu de dirigir-vos a la part de codificació.

Pas 5: Codificació d'Arduino per controlar la visualització de set segments

Codificació d'Arduino per controlar la visualització de set segments
Codificació d'Arduino per controlar la visualització de set segments

En aquest pas, codificarem Arduino UNO per mostrar diferents dígits a la pantalla de set segments. Els passos per fer-ho són els següents: -

1) Connecteu Arduino Uno al vostre PC.

2) Aneu al repositori Github d’aquest projecte des d’aquí.

3) Al dipòsit obriu el fitxer "7segment_arduino.ino", s'obrirà el codi d'aquest projecte.

4) Copieu aquest codi i enganxeu-lo al vostre IDE Arduino i pengeu-lo al tauler.

A mesura que es penja el codi, podreu veure els números del 0 al 9 que apareixen a la pantalla amb un retard d'1 segon.

Pas 6: Podeu fer el vostre propi així

Pots fer el teu propi així
Pots fer el teu propi així

Seguint tots aquests passos, podeu fer aquest projecte pel vostre compte, que s’assemblarà al que es mostra a la imatge superior. També podeu provar el mateix projecte sense el registre de majúscules i sabreu com és útil aquest IC per proporcionar sortides a diversos objectes alhora que també amb un nombre menor de pins GPIO. També podeu provar d’encadenar una sèrie d’aquests circuits integrats i controlar un gran nombre de sensors o dispositius, etc.

Espero que us hagi agradat aquest tutorial.

Recomanat: