Uso de una pantalla TM1637 de 4 dígitos y 7 segmentos con Arduino

Uso de una pantalla TM1637 de 4 dígitos y 7 segmentos con Arduino

En este tutorial aprenderemos a usar la pantalla TM1637 de 4 dígitos y 7 segmentos con un Arduino. Esta pantalla puede utilizarse para mostrar números, contadores u otros datos numéricos. Al final del proyecto tendrás una pantalla en funcionamiento que puede contar de 0 a 500 y demostrar diversas características, como el ajuste del brillo.

TM1637 4 digit display module

Para este proyecto, conectaremos la pantalla TM1637 al Arduino usando solo unos pocos cables. La pantalla tiene cuatro pines: VCC, GND, DIO y CLK. VCC se conecta a la fuente de alimentación de 5V, mientras que GND se conecta a tierra. El pin DIO se conectará al pin digital 3 del Arduino, y el pin CLK se conectará al pin digital 2. Esta configuración permite que el Arduino se comunique fácilmente con la pantalla.

Para ver la implementación práctica, asegúrate de seguir el video (en 00:00) como guía visual.

Hardware explicado

El TM1637 es un controlador versátil para displays de 7 segmentos que permite el control sencillo de pantallas de 4 dígitos. Se controla mediante una interfaz de dos hilos, que consiste en un pin de datos (DIO) y un pin de reloj (CLK). Esto facilita su conexión a microcontroladores como Arduino sin necesidad de componentes adicionales.

La pantalla puede mostrar números decimales y admite control de brillo, lo que la hace adecuada para una variedad de aplicaciones como contadores, relojes y temporizadores. Su diseño compacto y su facilidad de uso la convierten en una opción popular tanto entre aficionados como entre profesionales.

Detalles de la hoja de datos

FabricanteTitan Microelectrónica
Número de piezaTM1637
Tensión lógica/E/S5 V
Tensión de alimentación3.3 V - 5.5 V
Corriente de salida (por segmento)20 mA
Guía sobre la frecuencia PWMN/D
Umbrales lógicos de entrada0.3 VCC (bajo), 0.7 VCC (alto)
Caída de tensión / RDreno-Fuente (conducción) / saturación2.5 V (típ.)
Límites térmicos125 °C
PaqueteDIP de 16 pines

  • Asegúrese de que VCC esté conectado a una fuente estable de 5 V para evitar el mal funcionamiento de la pantalla.
  • Utilice resistencias limitadoras de corriente si es necesario para evitar daños en los segmentos.
  • Mantenga el cableado corto para minimizar el ruido y las interferencias.
  • Compruebe siempre dos veces las conexiones de los pines para evitar la inversión de la polaridad.
  • Ajuste los niveles de brillo usando elsetBrightnessfunción para una visibilidad óptima.

Instrucciones de cableado

Arduino wiring for TM1637 4 digit display
TArduino wiring for TM1637 4 digit display — Arduino wiring for TM1637 4 digit display
Arduino wiring for TM1637 4 digit display - large module
Arduino wiring for TM1637 4 digit display - large module

Para cablear la pantalla TM1637, primero conecta el pin VCC a la salida de 5V del Arduino. A continuación, conecta el pin GND a uno de los pines de tierra del Arduino. Para la comunicación de datos, conecta el pin DIO de la pantalla al pin digital 3 del Arduino y el pin CLK al pin digital 2. Esta configuración sencilla permite que el Arduino se comunique con la pantalla de manera eficaz.

Asegúrese de tener conexiones seguras para evitar problemas por cables sueltos. En el video se muestran configuraciones alternativas de cableado, pero las conexiones proporcionadas son las más sencillas para la operación básica (en el video a las 01:30).

Ejemplos de código y guía paso a paso

El código proporcionado inicializa la pantalla y establece las configuraciones necesarias. Los identificadores clave en el código incluyenCLKyDIO, que se definen como los pines digitales 2 y 3, respectivamente. El brillo de la pantalla se ajusta usando elsetBrightnessfunción.

#define CLK 2
#define DIO 3

TM1637Display display(CLK, DIO);

void setup() {
    display.setBrightness(0x0f);  // Set maximum brightness
}

Este fragmento de código muestra la inicialización de la pantalla y el ajuste del brillo máximo. A continuación, elloopLa función demuestra cómo mostrar varios números.

TM1637 4 digit display module - Back
void loop() {
    uint8_t data[] = { 0x0, 0x0, 0x0, 0x0 };
    display.setSegments(data);  // Clear the display
    display.showNumberDec(23, false, 2, 1);  // Show number 23
    delay(TEST_DELAY);
}

Aquí, la pantalla se borra y se muestra el número 23. La funciónshowNumberDectoma parámetros para controlar el número que se muestra y su formato. El bucle continúa mostrando números hasta 500.

for(int i=0; i<=500; i++) {
    display.showNumberDec(i);  // Show numbers from 0 to 500
}

Este fragmento de código ilustra un contador simple que muestra números del 0 al 500 en la pantalla TM1637. La pantalla se actualizará continuamente hasta que alcance 500; luego volverá a 0. El código completo está disponible a continuación del artículo para su referencia.

Demostración / Qué esperar

Una vez que todo esté cableado y el código cargado, la pantalla debería mostrar los números secuencialmente de 0 a 500. También mostrará distintos niveles de brillo y borrará la pantalla adecuadamente entre actualizaciones. Tenga cuidado con la polaridad invertida, ya que esto puede dañar la pantalla. Puede confirmar el funcionamiento observando la pantalla durante el video (en el video a 04:00).

Marcas de tiempo del video

  • 00:00- Introducción a la pantalla TM1637
  • 01:30- Instrucciones de cableado
  • 02:45- Recorrido del código
  • 04:00- Demostración de la pantalla

Imágenes

TM1637 4 digit display module size
TM1637 4 digit display module size
TM1637 4 digit display module
TM1637 4 digit display module
Arduino wiring for TM1637 4 digit display
TArduino wiring for TM1637 4 digit display
Arduino wiring for TM1637 4 digit display - large module
Arduino wiring for TM1637 4 digit display - large module
TM1637 4 digit display module
TM1637 4 digit display module
TM1637 4 digit display module - Back
TM1637 4 digit display module - Back
23-Arduino code for TM1637 4-digit display.
Idioma: C++
¡Copiado!

Recursos y referencias

Aún no hay recursos.

Archivos📁

Bibliotecas de Arduino (zip)

Hoja de datos (pdf)

Manual del Usuario