Interfaz de una pantalla de siete segmentos a un Arduino

Curso de Arduino 9: Display LED de 7 Segmentos (Mayo 2019).

$config[ads_text] not found
Anonim

Interfaz de una pantalla de siete segmentos a un Arduino


Para muchas aplicaciones, no es necesario usar una pantalla de cristal líquido más cara para mostrar los datos. Una simple pantalla de siete segmentos es suficiente.

Si su aplicación Arduino solo necesita mostrar los números, considere utilizarlos como una visualización uniforme. La pantalla del segmento severn tiene siete LED dispuestos en forma de número ocho. Son fáciles de usar y rentables. La siguiente imagen muestra una pantalla típica de siete segmentos.

Las pantallas de siete segmentos son de dos tipos: ánodo común y cátodo común. La estructura interna de ambos tipos es casi la misma. La diferencia es la polaridad de los LED y el terminal común. En una pantalla común de siete segmentos de cátodo (la que utilizamos en los experimentos), los siete LED más un LED de punto tienen los cátodos conectados a los pines 3 y 8. Para utilizar esta pantalla, debemos conectar GROUND al pin 3 y pin 8 y, y conecte + 5V a los otros pines para iluminar los segmentos individuales. El siguiente diagrama muestra la estructura interna de la visualización de siete segmentos de cátodo común:

Cátodo común

La pantalla de ánodo común es exactamente lo opuesto. En una pantalla de ánodo común, el terminal positivo de los ocho LED se conectan entre sí y luego se conectan al pin 3 y al pin 8. Para encender un segmento individual, conecte a tierra uno de los pines. El siguiente diagrama muestra la estructura interna de la pantalla de siete segmentos de ánodo común.

Ánodo común

Los siete segmentos están etiquetados como ag, con el punto como "dp", como se muestra en la figura a continuación:

Configuración de SSD

Para mostrar un número en particular, enciende los segmentos individuales como se muestra en la tabla siguiente:

Digit gfedcba

abcdefg

un

segundo

do

re

mi

F

gramo

0 0 × 3F

0 × 7E

en

en

en

en

en

en

apagado

1 0 × 06

0 × 30

apagado

en

en

apagado

apagado

apagado

apagado

2 0 × 5B

0 × 6D

en

en

apagado

en

en

apagado

en

3 0 × 4F

0 × 79

en

en

en

en

apagado

apagado

en

4 0 × 66

0 × 33

apagado

en

en

apagado

apagado

en

en

5 0 × 6D

0 × 5B

en

apagado

en

en

apagado

en

en

6 0 × 7D

0 × 5F

en

apagado

en

en

en

en

en

7 0 × 07

0 × 70

en

en

en

apagado

apagado

apagado

apagado

8 0 × 7F

0 × 7F

en

en

en

en

en

en

en

9 0 × 6F

0 × 7B

en

en

en

en

apagado

en

en

A 0 × 77

0 × 77

en

en

en

apagado

en

en

en

B 0 × 7C

0 × 1F

apagado

apagado

en

en

en

en

en

C 0 × 39

0 × 4E

en

apagado

apagado

en

en

en

apagado

D 0 × 5E

0 × 3D

apagado

en

en

en

en

apagado

en

E 0 × 79

0 × 4F

en

apagado

apagado

en

en

en

en

F 0 × 71

0 × 47

en

apagado

apagado

apagado

en

en

en

Experimento 1

En este experimento, simplemente activaremos y desactivaremos los LED para familiarizarnos con el funcionamiento de una pantalla de siete segmentos.

Hardware requerido

  • Pantalla de 1 x siete segmentos (cátodo común)
  • 1 x Arduino MEGA 2560
  • 1 x placa de prueba
  • Resistencias de 7 x 220 ohm (1/4 W)
  • cables de puente

Diagrama de cableado

En este circuito, los pines de la pantalla de siete segmentos están conectados a los pines Arduino 2-9, como se muestra en la tabla a continuación. Los pines comunes (pin 3 y pin 8) están conectados a GND y dp no está conectado, porque no se usa en este experimento

Siete pines de segmentoPines ArduinoColor del cable
1 (e)6naranja
2 (d)5blanco
3, 8 (COM)GNDn / A
do4amarillo
5 (dp)-
6 (b)3rojo
7 (a)2azul
9 (f)7cian
10 (g)8verde

1.

Código

 void setup() { // define pin modes pinMode(2, OUTPUT); pinMode(3, OUTPUT); pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); pinMode(7, OUTPUT); pinMode(8, OUTPUT); } void loop() { // loop to turn leds od seven seg ON for(int i=2;i<9;i++) { digitalWrite(i, HIGH); delay(600); } // loop to turn leds od seven seg OFF for(int i=2;i<9;i++) { digitalWrite(i, LOW); delay(600); } delay(1000); } 

Descargar código

Experimento 2

Descripción

En este tutorial, interactuaremos con una pantalla de siete segmentos con Arduino mega y aprenderemos a mostrar un conteo regresivo desde nueve con un retraso de un segundo, en la visualización de siete segmentos.

Hardware requerido

El hardware requerido para este experimento es el mismo que para el Experimento 1.


Diagrama de cableado

El diagrama de cableado para este experimento es el mismo que el circuito para el Experimento 1.


Código

 // make an array to save Sev Seg pin configuration of numbers int num_array(10)(7) = { { 1, 1, 1, 1, 1, 1, 0 }, // 0 { 0, 1, 1, 0, 0, 0, 0 }, // 1 { 1, 1, 0, 1, 1, 0, 1 }, // 2 { 1, 1, 1, 1, 0, 0, 1 }, // 3 { 0, 1, 1, 0, 0, 1, 1 }, // 4 { 1, 0, 1, 1, 0, 1, 1 }, // 5 { 1, 0, 1, 1, 1, 1, 1 }, // 6 { 1, 1, 1, 0, 0, 0, 0 }, // 7 { 1, 1, 1, 1, 1, 1, 1 }, // 8 { 1, 1, 1, 0, 0, 1, 1 }}; // 9 //function header void Num_Write(int); void setup() { // set pin modes pinMode(2, OUTPUT); pinMode(3, OUTPUT); pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); pinMode(7, OUTPUT); pinMode(8, OUTPUT); } void loop() { //counter loop for (int counter = 10; counter > 0; --counter) { delay(1000); Num_Write(counter-1); } delay(3000); } // this functions writes values to the sev seg pins void Num_Write(int number) { int pin= 2; for (int j=0; j < 7; j++) { digitalWrite(pin, num_array(number)(j)); pin++; } } 

Descargar archivo

Vídeo

Prueba este proyecto para ti! Obtener la lista de materiales.