top of page

PIC Direto ao Ponto: Matriz de LEDs

  • Writer: Thiago Turcato
    Thiago Turcato
  • Apr 27, 2020
  • 2 min read

Como controlar uma matriz de LEDs usando PIC 18F4550 e o driver HT16K33 da Holtek


Looking for the English version? Click here.


ree

Acionar uma matriz de LEDs diretamente de um microcontrolador consome muitos I/Os. O HT16K33 é uma boa opção que gerencia essa tarefa consumindo apenas dois I/Os do microcontrolador: SDA e SCL para a comunicação I2C.


Alguns meses atrás, eu estive trabalhando em um projeto que necessitava um display onde era importante a visualização a dois ou três metros de distância, inclusive à noite. O display de sete segmentos era uma opção usada por muitos produtos similares do mercado mas havia uma limitação: a representação de letras, necessária no projeto. Infelizmente, o projeto foi cancelado mas ainda assim, eu encontrei uma opção excelente, ainda que não fosse não barata quanto o display de sete segmentos (uma média de R$ 2,50 para o display de 7 segmentos contra R$ 3,00 para essa solução, por dígito) mas o custo é justo para aqueles que tiveram uma situação similar à minha (representação de letras e boa visualização à distância): Matrix de LEDs 5 x 7!

O display tem o tamanho perfeito comparado com displays de sete segmentos: em torno de 13 x 18 mm, muito próximo do popular display de sete segmentos de 0,56 polegadas.


ree
Aspecto da mini matriz 5 x 7, desligada e ligada

Um problema é: como acionar essas matrizes eficientemente? Como são matrizes 5 x 7, isso significa 35 LEDs a serem acionados, o que requer 12 I/Os, no mínimo, se multiplexado. Consome muitos I/Os!

Fazendo uma pesquisa, encontrei duas opções populares de drives para essas matrizes: MAX7219 (da Maxim) e HT16K33 (da Holtek). Confesso não ter tentado a primeira opção e decidi testar a segunda.


ree
Driver HT16K33 da Holtek

No começo foi um pouco confuso para entender como o HT16K33 e seus registradores I2C funcionavam. O sistema não funcionou na primeira tentativa. Após entender como juntar os dados I2C da forma correta, descobri como é fácil fazê-lo funcionar.

Todo o desenvolvimento e explicações podem ser encontrados no vídeo que eu postei no YouTube https://youtu.be/97hqhEZ7Nx0. Ele é bilíngue: Inglês e Português.

Espero que o aproveite! Sinta-se à vontade para enviar seu feedback ou pergunta! Thiago

Comments


Drop Me a Line, Let Me Know What You Think

Thanks for submitting!

© 2021 by TTR Engineering. Proudly created with Wix.com

bottom of page