Cómo usar una pantalla TM1638 de 4 dígitos. Ver el vídeo

Cómo usar una pantalla TM1638 de 4 dígitos. Ver el vídeo

El módulo TM1638 es un componente versátil que puede mostrar números y caracteres mientras se controla mediante botones. En este tutorial aprenderás a configurar y programar esta pantalla para mostrar distintos valores, incluidos números y valores hexadecimales. Al final de esta guía tendrás una pantalla completamente funcional que responde a las pulsaciones de los botones y cambia lo que muestra según la entrada del usuario. Puedes ver una demostración en el video en (en el video en 00:00).

TM1637 keypad display module-1

Hardware explicado

El módulo TM1638 está diseñado para mostrar información y recibir entradas de botones. Consiste en una pantalla LED de 8 dígitos y una matriz de 16 botones. Cada botón puede programarse para activar distintas funciones, lo que permite una interfaz fácil de usar. El módulo se conecta a un microcontrolador mediante tres pines: un pin de entrada/salida de datos, un pin de reloj y un pin de activación (strobe). Esta configuración permite una comunicación eficiente entre el microcontrolador y el TM1638. El circuito integrado TM1638 gestiona la pantalla y las entradas de los botones. Usa un protocolo de comunicación serial que le permite controlar la pantalla y leer el estado de los botones con un cableado mínimo. Cada pulsación de botón envía una señal al microcontrolador, que puede entonces ejecutar acciones específicas según qué botón se haya presionado.

Detalles de la hoja de datos

FabricanteQYF
Número de piezaTM1638
Voltaje lógico/E/S5 V
Tensión de alimentación5 V
Corriente de salida (por segmento)20 mA
Corriente de pico (total)120 mA
umbrales lógicos de entrada0.2 V (bajo) / 0.8 V (alto)
PaqueteDIP de 28 pines
  • Asegúrese de que la tensión de alimentación sea estable a 5 V para un rendimiento óptimo.
  • Limite la corriente de salida para evitar daños en la pantalla.
  • Use resistencias para evitar una corriente excesiva a través de los LED.
  • Filtrar el rebote de las entradas de botones en el software para evitar activaciones múltiples.
  • Mantenga el cableado corto para reducir el ruido en la comunicación.

Instrucciones de cableado

Para cablear el módulo TM1638, lo conectarás a tu microcontrolador de la siguiente manera:

Arduino wiring for TM1637 keypad display module
Arduino wiring for TM1637 keypad display module
- Conecte el pin etiquetadoVCCen el TM1638 a la fuente de alimentación de 5V de su microcontrolador. - Conecte elGNDpin del TM1638 al terminal de tierra de tu microcontrolador. - Conecta elSTBpin (a menudo etiquetado enSTROBE) al pin digital 5 de tu microcontrolador. - Conecta elCLKpin (reloj) al pin digital 2 de su microcontrolador. - Conecte elDIOConecta el pin (entrada/salida de datos) al pin digital 3 de tu microcontrolador. Asegúrate de revisar tus conexiones antes de encender el sistema. Si has seguido el video (en el minuto 02:30), no deberías tener problemas con el cableado.

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

El siguiente fragmento de código inicializa el módulo TM1638 y configura la pantalla. El identificadormodulerepresenta la instancia de TM1638 creada para interactuar con la pantalla.

TM1638QYF module(DIO, CLK, STB);
void setup() 
{
  module.setupDisplay(true, 7);
}

En este fragmento, la pantalla se configura para mostrar el brillo máximo (7). La siguiente parte del código gestiona las pulsaciones de los botones y cambia la pantalla según qué botón se pulse.

void update(TM1638QYF* module, word* mode) {
  word buttons = module->getButtons();
  if (buttons != 0) {
    *mode = buttons >> 1;
  }
  switch (*mode) {
    case 0: module->setDisplayToString("press 1"); break;
    // other cases follow
  }
}

Esta función comprueba qué botón está presionado usandogetButtons()y actualiza la pantalla en consecuencia. La variablemodedetermina qué texto se muestra según el botón presionado. Finalmente, el bucle principal actualiza continuamente la pantalla.

void loop() 
{
  update(&module, &mode);
}

Este bucle llama aupdatefunción, asegurando que la visualización se actualice según la interacción del usuario. Para una comprensión completa, consulte el código completo cargado más abajo en el artículo.

Demostración / Qué esperar

Una vez que tengas todo cableado y el código cargado, al presionar los botones el texto de la pantalla debería cambiar en consecuencia. Por ejemplo, al pulsar el botón 1 la pantalla mostrará pulsa 1, mientras que al pulsar el botón 2 mostrará pulsa 2. Si hay algún problema, revisa el cableado y asegúrate de que se están usando los pines correctos como se mencionó. Ver el video (en el minuto 05:00) también ayudará a confirmar que todo funciona como se espera.

Marcas de tiempo del vídeo

  • 00:00- Introducción
  • 02:30- Instrucciones de cableado
  • 05:00- Explicación y Demostración del Código

Imágenes

TM1637 keypad display module-1
TM1637 keypad display module-1
TM1637 keypad display module-2
TM1637 keypad display module-2
TM1637 keypad display module-3
TM1637 keypad display module-3
TM1637 keypad display module
TM1637 keypad display module
Arduino wiring for TM1637 keypad display module
Arduino wiring for TM1637 keypad display module
28-This is the Arduino code for a TM1638 8-digit display with a 4x4 matrix button.
Idioma: C++
¡Copiado!

Cosas que podrías necesitar

Recursos y referencias

Archivos📁

Bibliotecas de Arduino (zip)

Manual del Usuario