Contactos

Indicador de 7 segmentos 4 dígitos arduino. Arduino e indicador de siete segmentos de cuatro dígitos. Gestión de indicadores de siete segmentos


Diagrama de conexión para un indicador de siete segmentos de un solo dígito
Diagrama de conexión para un indicador de siete segmentos de varios dígitos

Dispositivo de visualización de información digital. Esta es la implementación más simple de un indicador que puede mostrar números arábigos. Para mostrar letras se utilizan indicadores matriciales y de múltiples segmentos más complejos.

Como su nombre lo indica, consta de siete elementos visualizadores (segmentos) que se encienden y apagan por separado. Al incluirlos en diferentes combinaciones, se pueden utilizar para crear imágenes simplificadas de números arábigos.
Los segmentos se designan con las letras de la A a la G; octavo segmento - punto decimal (punto decimal, DP), diseñado para mostrar números fraccionarios.
Ocasionalmente, se muestran letras en el indicador de siete segmentos.

Vienen en una variedad de colores, generalmente blanco, rojo, verde, amarillo y azul. Además, pueden ser de diferentes tamaños.

Además, el indicador LED puede ser de un solo dígito (como en la figura anterior) o de varios dígitos. Básicamente, en la práctica se utilizan indicadores LED de uno, dos, tres y cuatro dígitos:

Además de diez dígitos, los indicadores de siete segmentos pueden mostrar letras. Pero pocas letras tienen una representación intuitiva de siete segmentos.
En latín: mayúscula A, B, C, E, F, G, H, I, J, L, N, O, P, S, U, Y, Z, minúscula a, b, c, d, e, g , h, i, n, o, q, r, t, u.
En cirílico: A, B, V, G, g, E, i, N, O, o, P, p, R, S, s, U, Ch, Y (dos dígitos), b, E/Z.
Por lo tanto, los indicadores de siete segmentos se utilizan únicamente para mostrar mensajes simples.

En total, el indicador LED de siete segmentos puede mostrar 128 caracteres:

Un indicador LED típico tiene nueve cables: uno va a los cátodos de todos los segmentos y los otros ocho van al ánodo de cada segmento. Este esquema se llama "circuito de cátodo común", también hay esquemas con ánodo común(entonces es al revés). A menudo, no se hacen uno, sino dos terminales comunes en diferentes extremos de la base; esto simplifica el cableado sin aumentar las dimensiones. También existen los llamados "universales", pero yo personalmente no los he encontrado. Además, hay indicadores con un registro de desplazamiento incorporado, lo que reduce en gran medida la cantidad de pines de puerto del microcontrolador involucrados, pero son mucho más caros y rara vez se usan en la práctica. Y como no se puede captar la inmensidad, por ahora no consideraremos tales indicadores (pero también hay indicadores con un número mucho mayor de segmentos, los matriciales).

Indicadores LED de varios dígitos A menudo funcionan según un principio dinámico: las salidas de los segmentos del mismo nombre de todos los dígitos están conectadas entre sí. Para mostrar información en dicho indicador, el microcircuito de control debe suministrar corriente cíclicamente a los terminales comunes de todos los dígitos, mientras que la corriente se suministra a los terminales del segmento dependiendo de si un segmento determinado está encendido en un dígito determinado.

Conexión de un indicador de siete segmentos de un dígito a un microcontrolador

El siguiente diagrama muestra cómo se conecta un indicador de siete segmentos de un solo dígito al microcontrolador.
Se debe tener en cuenta que si el indicador con CÁTODO COMÚN, entonces su salida común está conectada a "tierra", y los segmentos se encienden al alimentarlos. unidad lógica a la salida del puerto.
Si el indicador es ANODO COMUN, luego se alimenta a su cable común "más" voltaje, y los segmentos se encienden cambiando la salida del puerto al estado cero lógico.

La indicación en un indicador LED de un solo dígito se realiza aplicando un código binario a los pines del puerto del microcontrolador del dígito correspondiente del nivel lógico correspondiente (para indicadores con OK - unos lógicos, para indicadores con OA - ceros lógicos).

Resistencias limitadoras de corriente puede o no estar presente en el diagrama. Todo depende de la tensión de alimentación suministrada al indicador y de las características técnicas de los indicadores. Si, por ejemplo, el voltaje suministrado a los segmentos es de 5 voltios y están diseñados para un voltaje de funcionamiento de 2 voltios, entonces se deben instalar resistencias limitadoras de corriente (para limitar la corriente a través de ellos para un mayor voltaje de suministro y no quemar no sólo el indicador, sino también el puerto del microcontrolador).
Es muy fácil calcular el valor de las resistencias limitadoras de corriente utilizando la fórmula del abuelo. Ohm.
Por ejemplo, las características del indicador son las siguientes (tomada de la hoja de datos):
— tensión de funcionamiento — 2 voltios
— corriente de funcionamiento — 10 mA (=0,01 A)
— tensión de alimentación 5 voltios
Fórmula de cálculo:
R= U/I (todos los valores en esta fórmula deben estar en Ohmios, Voltios y Amperios)
R= (tensión de alimentación - tensión de funcionamiento)/corriente de funcionamiento
R= (5-2)/0,01 = 300 Ohmios

Diagrama de conexión para un indicador LED de siete segmentos de varios dígitos Básicamente lo mismo que cuando se conecta un indicador de un solo dígito. Lo único es que se añaden transistores de control en los cátodos (ánodos) de los indicadores:

No se muestra en el diagrama, pero entre las bases de los transistores y los pines del puerto del microcontrolador es necesario incluir resistencias, cuya resistencia depende del tipo de transistor (los valores de las resistencias se calculan, pero También puedes intentar utilizar resistencias con un valor nominal de 5-10 kOhm).

La indicación de descargas se realiza de forma dinámica:
— el código binario del dígito correspondiente se establece en las salidas del puerto PB para el primer dígito, luego el nivel lógico se aplica al transistor de control del primer dígito
— el código binario del dígito correspondiente se establece en las salidas del puerto PB para el segundo dígito, luego el nivel lógico se aplica al transistor de control del segundo dígito
— el código binario del dígito correspondiente se establece en las salidas del puerto PB para el tercer dígito, luego el nivel lógico se aplica al transistor de control del tercer dígito
- entonces en un círculo
En este caso es necesario tener en cuenta:
— para indicadores con DE ACUERDO Se utiliza la estructura del transistor de control. PNP(controlado por unidad lógica)
— para indicador con OA- transistor de estructura PNP(controlado por cero lógico)

Este artículo continúa la serie de mis publicaciones sobre la organización de la indicación dinámica en microcontroladores PIC e indicadores LED. Aquí hay enlaces a publicaciones anteriores:

Tabla de funcionamiento del algoritmo propuesto (se utiliza un indicador con un cátodo común, la primera columna muestra las salidas del registro combinadas con los dígitos del indicador) según el diagrama de conexión que se muestra a continuación.

En cada una de las interrupciones con un intervalo de 2 ms (en este caso del temporizador TMR0), se prepara una etapa de indicación dinámica (DI) según un algoritmo que consta de cinco fases de control de registro e indicador.

Segunda fase: el flanco positivo en el pin 12 del registro (ST_CP) escribe el estado cero del registro en el pestillo de salida. Aquí y más, antes del inicio de la indicación, el indicador se apaga por potencial cero en los segmentos.

3.ª fase: controlando los pines de registro 14 (DS - datos) y 11 (SH_CP - reloj), se escribe en ellos el código para controlar los segmentos.

4ta fase: con una caída positiva en el pin 12 del registro, los datos del registro se escriben en el pestillo de salida y, debido a los niveles positivos en los bits, el indicador permanece apagado.

Quinta fase: aquí se suministra el código requerido a las salidas de los dígitos del indicador y luego se produce la indicación real.

Si el circuito utiliza un indicador de 4 dígitos, para que funcione correctamente debe configurarse en OK. Si necesita controlar 8 bits, entonces se utilizan 8 puertos MK, mientras que los 4 puertos restantes simplemente controlan los bits (en la fase 4 deben tener un nivel alto). Vale la pena señalar que en este caso es posible utilizar indicadores tanto con OK como con OA, conectando segmentos o dígitos al registro, respectivamente (por las razones que se exponen a continuación, en el primer caso es preferible organizar DI segmento por segmento, y en el segundo, bit a bit).

Con este método, puede conectar dos indicadores de cuatro bits a la MCU PIC16F676 usando un registro de desplazamiento, dejando hasta cuatro puertos libres para usar. Por ejemplo, para tal conexión, la gente utilizó la combinación de funciones DI y entrada analógica en algunos puertos MK (en mi opinión, una decisión extremadamente dudosa), lo que condujo a una complicación significativa del circuito y a algunas limitaciones, que los autores advertir sobre. Usando mi diagrama de conexión, todo se resolvería de manera simple y hermosa: entradas separadas, indicaciones separadas y dos puertos más (incluido MCLR) para botones.

Para probar este método de control, se propone el siguiente circuito simple en la MCU PIC12F629 y el indicador FYQ3641A, que muestra alternativamente la palabra "prueba" y el número 1234 en el indicador.

Aquí se decidió utilizar una DI segmento por segmento (se enciende un segmento en cada momento y hay un código en los pines de bits, donde en cada bit: 0 - si este segmento debe encenderse en un bit determinado y 1 - en caso contrario), en el que las corrientes máximas se transfieren al registro. ¿Por qué? Hay dos razones para esto: primero, la capacidad de carga máxima de las salidas del 74HC595 es de 35 mA versus 25 mA para los controladores PIC; Lo segundo y principal es que una corriente cercana al límite a través del puerto de salida del MK puede teóricamente elevar su potencial de salida al nivel de conmutación de las entradas del registro, lo que conduciría a errores operativos. Y así, en los puertos MK fluyen corrientes de 6-7 mA y los potenciales en las salidas ciertamente no exceden los niveles TTL.

Como se mencionó anteriormente, el intervalo de interrupción es de 2 ms, lo que corresponde a una frecuencia de actualización del indicador de 64 Hz y su brillo es bastante agradable a la vista.

Este método DI permitió, entre otras cosas, reducir a la mitad el número de resistencias limitadoras de corriente (R2-R5).

El dispositivo se ensambla en una placa denominada "sin soldadura".

El indicador se puede reemplazar con cualquiera de la serie 3641A.

El circuito está alimentado por una fuente estabilizada de 5 V. Utilicé una placa estabilizadora especial diseñada para usar con la placa mencionada anteriormente.

El programa de control MK está escrito en lenguaje C y traducido al entorno.

Código en MikroC, proyecto, archivo HEX en la aplicación.

Para utilizar este método de conexión en desarrollos comerciales, por favor contácteme.

Lista de radioelementos

Designación Tipo Denominación Cantidad NotaComerciomi bloc de notas
DD1 MK PIC de 8 bits

PIC12F629

1 al bloc de notas
DD2 Registro74HC5951 al bloc de notas
HL IndicadorFYQ36411 al bloc de notas
R1 Resistor

30 kOhmios

1 al bloc de notas
R2 Resistor

430 ohmios

1 al bloc de notas
R3 Resistor

430 ohmios

1

Seguramente ya has visto los indicadores “ocho”. Este es un indicador LED de siete segmentos, que sirve para mostrar números del 0 al 9, así como el punto decimal ( DP- Punto decimal) o coma.

Estructuralmente, este producto es un conjunto de LED. Cada LED del conjunto ilumina su propio segmento de letrero.

Dependiendo del modelo, el conjunto puede constar de 1 a 4 grupos de siete segmentos. Por ejemplo, el indicador ALS333B1 consta de un grupo de siete segmentos, que es capaz de mostrar solo un dígito del 0 al 9.

Pero el indicador LED KEM-5162AS ya tiene dos grupos de siete segmentos. Es de dos dígitos. La siguiente foto muestra diferentes indicadores LED de siete segmentos.

También hay indicadores con 4 grupos de siete segmentos: cuatro dígitos (en la foto, FYQ-5641BSR-11). Se pueden utilizar en relojes electrónicos caseros.

¿Cómo se indican los indicadores de siete segmentos en los diagramas?

Dado que el indicador de siete segmentos es un dispositivo electrónico combinado, su imagen en los diagramas difiere poco de su apariencia.

Sólo hay que prestar atención al hecho de que cada pin corresponde a un segmento de señal específico al que está conectado. También hay uno o más terminales de un cátodo o ánodo común, según el modelo del dispositivo.

Características de los indicadores de siete segmentos.

A pesar de la aparente sencillez de esta parte, también tiene sus propias peculiaridades.

En primer lugar, los indicadores LED de siete segmentos vienen con un ánodo y un cátodo comunes. Esta característica debe tenerse en cuenta a la hora de adquirirlo para un diseño o dispositivo casero.

Aquí, por ejemplo, está el pinout del indicador de 4 dígitos que ya conocemos. FYQ-5641BSR-11.

Como puede ver, los ánodos de los LED de cada dígito se combinan y se envían a un pin separado. Los cátodos de los LED que pertenecen al segmento de señal (por ejemplo, GRAMO), conectados entre sí. Mucho depende del tipo de diagrama de conexión que tenga el indicador (con un ánodo o cátodo común). Si observa los diagramas de circuitos de los dispositivos que utilizan indicadores de siete segmentos, quedará claro por qué esto es tan importante.

Además de los indicadores pequeños, los hay grandes e incluso muy grandes. Se pueden ver en lugares públicos, normalmente en forma de relojes de pared, termómetros e informadores.

Para aumentar el tamaño de los números en la pantalla y al mismo tiempo mantener un brillo suficiente de cada segmento, se utilizan varios LED conectados en serie. A continuación se muestra un ejemplo de un indicador de este tipo: cabe en la palma de su mano. Este FYS-23011-BUB-21.

Un segmento consta de 4 LED conectados en serie.

Para iluminar uno de los segmentos (A, B, C, D, E, F o G), es necesario aplicarle un voltaje de 11,2 voltios (2,8 V para cada LED). Puedes hacer menos, por ejemplo, 10V, pero el brillo también disminuirá. La excepción es el punto decimal (DP), su segmento consta de dos LED. Sólo necesita 5 - 5,6 voltios.

En la naturaleza también se encuentran indicadores de dos colores. Por ejemplo, llevan integrados LED rojos y verdes. Resulta que hay dos indicadores integrados en la carcasa, pero con LED de diferentes colores. Si aplica voltaje a ambos circuitos LED, puede obtener un brillo amarillo en los segmentos. Aquí hay un diagrama de cableado para uno de estos indicadores de dos colores (SBA-15-11EGWA).

Si conecta los pines 1 ( ROJO) y 5 ( VERDE) a la fuente de alimentación “+” a través de transistores clave, puede cambiar el color de los números mostrados de rojo a verde. Y si conecta los pines 1 y 5 al mismo tiempo, el color del brillo será naranja. Así es como puedes jugar con los indicadores.

Gestión de indicadores de siete segmentos.

Para controlar indicadores de siete segmentos en dispositivos digitales, se utilizan registros de desplazamiento y decodificadores. Por ejemplo, un decodificador ampliamente utilizado para controlar indicadores de las series ALS333 y ALS324 es un microcircuito. K514ID2 o K176ID2. He aquí un ejemplo.

Y para controlar los indicadores importados modernos, generalmente se utilizan registros de desplazamiento. 74HC595. En teoría, los segmentos de la pantalla se pueden controlar directamente desde las salidas del microcontrolador. Pero un circuito de este tipo rara vez se utiliza, ya que para ello es necesario utilizar bastantes pines del propio microcontrolador. Por lo tanto, para este propósito se utilizan registros de desplazamiento. Además, la corriente consumida por los LED del segmento de señal puede ser mayor que la corriente que puede proporcionar la salida ordinaria del microcontrolador.

Para controlar grandes indicadores de siete segmentos, como el FYS-23011-BUB-21, se utilizan controladores especializados, por ejemplo, un microcircuito MBI5026.

¿Qué hay dentro del indicador de siete segmentos?

Bueno, algo rico. Cualquier ingeniero electrónico no sería tal si no estuviera interesado en el “interior” de los componentes de radio. Esto es lo que hay dentro del indicador ALS324B1.

Los cuadrados negros de la base son cristales LED. Aquí también puedes ver los puentes dorados que conectan el cristal a uno de los pines. Desafortunadamente, este indicador ya no funcionará, ya que estos mismos puentes fueron arrancados. Pero sí podemos ver lo que se esconde detrás del panel decorativo del marcador.

Conectar una pantalla de 7 segmentos a un Arduino es un excelente proyecto de nivel básico para conocer mejor su placa Arduino. Pero es bastante fácil de hacer. Por tanto, complicaremos un poco la tarea y conectaremos un indicador de cuatro dígitos y siete segmentos.



En este caso utilizaremos un módulo indicador LED de cuatro dígitos con un cátodo común.


Cada segmento del módulo indicador está multiplexado, lo que significa que comparte un punto de conexión del ánodo con otros segmentos de su descarga. Y cada uno de los cuatro bits del módulo tiene su propio punto de conexión con un cátodo común. Esto permite activar o desactivar cada dígito de forma independiente. Además, este método de multiplexación permite que el microcontrolador utilice sólo once o doce pines en lugar de treinta y dos.



Los segmentos LED del indicador requieren la conexión de resistencias limitadoras de corriente cuando se alimentan desde 5 V en el pin lógico. El valor de la resistencia suele tomarse entre 330 y 470 ohmios. También se recomienda utilizar transistores para proporcionar corriente adicional, ya que cada pin del microcontrolador puede suministrar un máximo de 40 mA. Si enciende todos los segmentos de descarga (número 8), el consumo actual superará este límite. La siguiente figura muestra un diagrama de conexión para un indicador de siete segmentos de cuatro dígitos que utiliza transistores de resistencia limitadores de corriente.



Los siguientes son diagramas para conectar el indicador a los pines Arduino. Aquí se utilizan transistores bipolares NPN BC547. Un potenciómetro de 10 KOhm conectado a la entrada de la placa A0 le permite cambiar el valor mostrado en el indicador de 0 a 1023.




En la placa Arduino, las salidas digitales D2-D8 en este caso se usan para controlar los segmentos "a" a "g", y las salidas digitales D9-D12 se usan para controlar los bits D0 a D3. Cabe señalar que en este ejemplo no se utiliza el punto, pero en el siguiente boceto es posible utilizarlo. El pin D13 de la placa Arduino está reservado para controlar el segmento puntual.



A continuación se muestra el código que le permite controlar un indicador de segmento de cuatro dígitos utilizando una placa Arduino. En él, la matriz numérica especifica los códigos de los números del 0 al 9 en forma binaria. Este boceto admite tanto indicadores con un cátodo común (por defecto) como indicadores con un ánodo común (para hacer esto, debe descomentar una línea al final del boceto).


// bits que representan los segmentos A a G (y puntos), para números 0-9 const int numeral = ( //ABCDEFG /dp B11111100, // 0 B01100000, // 1 B11011010, // 2 B11110010, // 3 B01100110, // 4 B10110110, // 5 B00111110, // 6 B11100000, // 7 B11111110, // 8 B11100110, // 9 ); // pines para el punto y cada segmento // DP,G,F,E,D,C,B,A const int segmentPins = ( 13,8,7,6,5,4,3,2 ); const int nbrDigits= 4; // número de dígitos del indicador LED // dígitos 0 1 2 3 const int digitPins = ( 9,10,11,12 ); configuración vacía() (para(int i=0; i< 8; i++) { pinMode(segmentPins[i], OUTPUT); // устанавливаем выводы для сегментов и точки на выход } for(int i=0; i < nbrDigits; i++) { pinMode(digitPins[i], OUTPUT); } } void loop() { int value = analogRead(0); showNumber(value); } void showNumber(int number) { if(number == 0) { showDigit(0, nbrDigits-1) ; // отображаем 0 в правом разряде } else { // отображаем значение, соответствующее каждой цифре // крайняя левая цифра 0, правая на единицу меньше, чем число позиций for(int digit = nbrDigits-1; digit >= 0; dígito--) ( if(número > 0) ( showDigit(número % 10, dígito) ; número = número / 10; ) ) ) ) // Muestra el número especificado en este dígito del indicador de 7 segmentos void showDigit(int número, int dígito) ( digitalWrite(digitPins, HIGH); for(int segmento = 1; segmento< 8; segment++) { boolean isBitSet = bitRead(numeral, segment); // isBitSet будет истинным, если данный бит будет 1 // isBitSet = ! isBitSet; // опционально // раскомментируйте опциональную строчку выше для индикатора с общим анодом digitalWrite(segmentPins, isBitSet); } delay(5); digitalWrite(digitPins, LOW); }

Nuevos artículos

● Proyecto 7: Matriz de 4 dígitos de indicadores de 7 segmentos. Hacer una visualización dinámica

En este experimento veremos el funcionamiento de Arduino con una matriz de siete segmentos de 4 bits. Hagamos una idea de la visualización dinámica, que le permite utilizar los mismos pines Arduino al mostrar información en varios indicadores de siete segmentos.

Componentes necesarios:

La matriz de 4 dígitos de indicadores de siete segmentos consta de cuatro indicadores de siete segmentos y está diseñada para mostrar simultáneamente 4 dígitos en la matriz; también es posible mostrar un punto decimal; El circuito de una matriz de 4 bits en indicadores de 7 segmentos se muestra en la Fig. 7.1.

Arroz. 7.1. Esquema de una matriz de 4 bits sobre indicadores de 7 segmentos.

Para generar un número, debe encender los LED necesarios en los pines A-G y DP y seleccionar la matriz deseada aplicando LOW a los pines 6, 8, 9 o 12.
Conectemos los contactos de la matriz a la placa Arduino y emitamos los números a varios bits de la matriz. Para conectarnos necesitamos 12 pines Arduino. El diagrama de conexión para conectar una matriz de 4 bits a la placa Arduino se muestra en la Fig. 7.2. Al conectar contactos, se utilizan resistencias limitadoras de 510 ohmios.

Arroz. 7.2. Diagrama de conexión de matriz de 4 bits a Arduino

Escribamos un boceto de la salida secuencial de números (0-9) en un registro arbitrario de la matriz. Para seleccionar un valor aleatorio del rango, usaremos la función aleatoria(). La matriz de números almacena valores correspondientes a los datos para mostrar los dígitos 0-9 (el bit más significativo del byte corresponde a la etiqueta del segmento A del indicador, y el de orden inferior al segmento G), la matriz de pines contiene los valores de contacto para los segmentos A-G y DP, la matriz pindigits contiene los valores de contacto para seleccionar un dígito de matriz. El contenido del boceto se muestra en el Listado 7.1.

// variable para almacenar el valor del dígito actual número entero = 0; // indicador de siete segmentos dígito int = 0; configuración nula()(para (int i=0;i<8 ;i++) pinMode(pins[i],OUTPUT); for (int i=0 ;i<4 ;i++) {pinMode(pindigits[i],OUTPUT); digitalWrite(pindigits[i],HIGH); } } bucle vacío()( número=(número+1 )%10 ; mostrarNúmero(número); // DS para (int i=0 ;i<4 ;i++) digitalWrite(pindigits[i],HIGH); digit=random(0 ,4 ); digitalWrite(pindigits,LOW); delay(3000 ); } nulo showNumber( número int)(para (int i=0;i<7 ;i++) { if (bitRead(numbers,7 -i)==HIGH) // ilumina el segmento // extinguir el segmento escritura digital (pines [i], BAJO); ) )
Orden de conexión:

1. Conecte un indicador de siete segmentos según el diagrama de la Fig. 7.3.
2. Cargue el boceto del Listado 7.2 en la placa Arduino.

// lista de pines Arduino para conectar a los bits a-g // indicador de siete segmentos int pines = (9, 13, 4, 6, 7, 10, 3, 5); // valores para mostrar los números 0-9 números de bytes = (B11111100, B01100000, B11011010, B11110010, B01100110, B10110110, B10111110, B11100000, B11111110, B11110110); // variable para almacenar y procesar el valor actual número entero = 0; int número1=0; int número2=0; // indicador de siete segmentos int pindigits=(2,8,11,12); // variable para almacenar el dígito actual dígito int = 0; // para medir 100 ms milis1 largo sin firmar = 0; // modo 1 - el cronómetro está funcionando modo=0; constante int BOTÓN=14; // Pin 14(A0) para conectar el botón int tekButton = BAJO; // Variable para guardar el estado actual del botón int botónprev = BAJO; // Variable para guardar el estado anterior// a los botones booleanos ledOn = false ; // Estado actual del LED (encendido/apagado) configuración nula(){ // Configurar el pin del botón como entrada pinMode(BOTÓN, ENTRADA); // Configurar pines como salidas para (int i=0 ;i<8 ;i++) pinMode(pins[i],OUTPUT); for (int i=0 ;i<4 ;i++) {pinMode(pindigits[i],OUTPUT); digitalWrite(pindigits[i],HIGH); } } bucle vacío()( tekButton = antirrebote(prevButton); if (prevButton == LOW && tekButton == HIGH) // si se presiona... ( mode=1 -mode; // modo de cambio si (modo==1) número=0; ) if (millis()-millis1>=100 && modo==1 ) (millis1=millis1+100 ; número=número+1 ; if (número==10000 ) número=0 ; ) número1=número; para (int i=0 ;i<4 ;i++) { number2=number1%10 ; number1=number1/10 ; showNumber(number2,i); for (int j=0 ;j<4 ;j++) digitalWrite(pindigits[j],HIGH); digitalWrite(pindigits[i],LOW); delay(1 ); } } // función para mostrar números en un indicador de siete segmentos nulo showNumber( int núm, int excavar)(para (int i=0;i<8 ;i++) { if (bitRead(numbers,7 -i)==HIGH) // ilumina el segmento escritura digital (pines [i], ALTO); demás // extinguir el segmento escritura digital (pines [i], BAJO); ) si (excavar==1 ) // punto decimal para el segundo dígito escritura digital (pines, ALTO); ) // Función de suavizado de rebote. Acepta como // argumenta el estado anterior del botón y devuelve el estado actual. rebote booleano ( último booleano)( corriente booleana = lectura digital (BOTÓN); // Lee el estado del botón, si (¡último! = actual) // si ha cambiado...( d elay ( 5 ) ; // vamos a dem 5 m s actual = digitalRead(BUTTON); // lee el estado del botón corriente de retorno; // devolver el estado del botón } }

3. Pulsando el botón ponemos en marcha o paramos el cronómetro.



¿Te gustó el artículo? Compártelo