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).

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
| Fabricante | QYF |
|---|---|
| Número de pieza | TM1638 |
| Voltaje lógico/E/S | 5 V |
| Tensión de alimentación | 5 V |
| Corriente de salida (por segmento) | 20 mA |
| Corriente de pico (total) | 120 mA |
| umbrales lógicos de entrada | 0.2 V (bajo) / 0.8 V (alto) |
| Paquete | DIP 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:

VCCen 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
Cosas que podrías necesitar
-
AmazonasTM1638 en Amazonamzn.to
-
AliExpressMódulo de teclado TM1638 en AliExpresss.click.aliexpress.com
Recursos y referencias
-
ExternoBiblioteca TM1638 (de GitHub)github.com
Archivos📁
Bibliotecas de Arduino (zip)
Manual del Usuario
-
Manual TM1638
robojax-TM1638_manual.pdf5.07 MB