Postagem em destaque

Controle PID de Potência em Corrente Alternada - Arduino e TRIAC - Parte I

Este post é o primeiro de uma série de seis que escrevi tratando de controle de potência e PID (controle proporcional, integral e derivativo...

sábado, 21 de julho de 2012

Comandando displays de LEDs com 74HC595 - parte I

A partir de uma solicitação de um frequentador do Lab de Garagem, resolvi criar um exemplo de como usar o 74HC595 para controlar, com apenas 3 portas, "infinitos" displays LED de oito segmentos. Então, hoje pela manhã no Arduino no Parque fiz o circuito e o software que descrevo a seguir.

O display é muito semelhante a esse aí do lado. Ele é é meio grandão, então tive que usar duas protoboards emendadas para conectá-lo. Usei dois displays porque só  tinha 2, mas podem ser usados até 10, ou mais se a biblioteca for alterada. O código dele é MLS-12101AHR1.
Para ligá-lo, achei um esquema na net. que segue abaixo.
Os diferentes segmentos são "numerados" de A a G. o ponto decimal, dot point, é o DP.
Vc deve ficar atento à pinagem do seu display, que varia de modelo a modelo.
Outra coisa que vc deve observar é se o seu display é anodo (-) comum ou catodo (+) comum. O meu exemplo é para anodo comum. Se for catodo comum, este deve ser ligado no (+) e não no terra como está no exemplo. A biblioteca que vou apresentar funciona com ambos os tipos de displays.



Na hora de ligar o display no CI, adote a seguinte convenção: o segmento A deve ser ligado no pino de dados Q0 do CI, o segmento B no pino Q1 e assim por diante. O ponto decimal deve ser ligado no pino Q8 do chip.
Abaixo o esquema de ligação para 2 chips, 2 displays:


Vocês podem observar que eu não liguei resistores em série com os LEDs. Eu deveria ter feito isso, para proteger os LEDs e até o Arduino, mas eu não tinha tantos resistores assim, então... mas você pode colocar, resistores e caldo de galinha não fazem mal a ninguém...
Para testar o bicho, resolvi montar um termômetro com alarme. Esquema, abaixo:


O capacitor azul tá fazendo o papel de um PT100, que foi calibrado para dar uma leitura de temperatura em graus Celsius nos displays.
Quando a temperatura passa de 30 oC, o sistema toca a campainha.

Abaixo, a foto do circuito montado.


E, por fim, o vídeo da bagaça funcionando. No próximo post, o software.