Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
O M5450B7 é um driver IC de display LED DIP de 40 pinos.
Parece uma besta, mas é relativamente fácil de controlar e programar.
Existem 34 pinos de saída que podem ter um LED conectado a cada um.
O dispositivo absorve a corrente em vez de fornecê-la, então o cátodo do LED precisa ser conectado a um pino e 5 V fornecido ao ânodo. O dispositivo também cuida da corrente fornecida aos LEDs.
O dispositivo é geralmente usado para controlar visores de LED alfanuméricos de 4 ou 5 dígitos, mas há muitas outras coisas que você pode fazer com ele.
Aqui está um exemplo simples do que o dispositivo pode fazer.
Etapa 1: Conectando o dispositivo
O M5450 pode ser configurado em uma placa de ensaio ou você pode construir algo semelhante ao que fiz abaixo.
- Conecte o pino 1 Vss e o pino 23 Habilitar Dados ao Gnd,
- Conecte o pino 20 a 5V,
- Conecte o pino 19 a 5V através de um resistor (usei 200 Ohms)
- Um capacitor 1nF deve ser conectado ao controle de brilho, pinos 19 e 20, para evitar possíveis oscilações.
- Conecte CLOCK IN ao D1 do ESP8266
- Conecte DATA IN ao D2 do ESP8266
Eu usei um WeMos para acionar minha placa, pois ela tem uma fonte de 5 V, o dispositivo também funciona a 3,3 V embora os LEDs não sejam tão brilhantes. Qualquer ESP8266 deve ser capaz de conduzir o dispositivo M5450.
Eu também usei a fonte USB do PC para acionar o dispositivo sem nenhuma fonte de alimentação adicional.
Você pode usar qualquer um dos pinos ESP8266 para conectar o dispositivo, se você alterar o programa fornecido em conformidade.
Etapa 2: Meu Quadro
A placa é bastante fácil de construir, mas há muito trabalho de solda para fazer!
Usar os LEDs retangulares significa que você pode agrupá-los juntos.
Etapa 3: Software
O dispositivo é bastante fácil de programar, pois possui apenas 2 entradas - CLOCK IN e DATA IN.
Nenhuma biblioteca precisa ser baixada ou instalada para fazer o dispositivo funcionar.
Defina D1 e D2 para saídas no ESP8266.
Você pega D1 no pino do relógio HIGH, coloca os dados (HIGH ou LOW) no pino D2 e pega o pino do relógio LOW novamente. Faça isso 36 vezes e o dispositivo será programado. Você não precisa de um atraso de temporizador entre as 2 transições de relógio, o dispositivo pode acompanhar o ESP8266.
para i = 0, 35 faça
gpio.write (clock, gpio. HIGH) gpio.write (data, buffer ) gpio.write (clock, gpio. LOW) end
buffer [35] precisa ser definido como 1 ou HIGH para o dispositivo funcionar.
O dispositivo trava quando obtém o número correto de bits de dados e envia as informações para as saídas
O diagrama (acima) mostra como o dispositivo deve ser programado. Não sou brilhante com planilhas de dados, mas minha interpretação funciona.
Etapa 4: Programa LUA
Eu escrevi o programa com funções.
random () - Liga e desliga LEDschaser aleatório () - 3 LEDs acendem chaserallOnOff () - Liga todos os LEDs e depois offarrayFill () - Carrega um padrão predefinido de LEDs no IC
Os 4 exemplos incluídos são bastante autoexplicativos.
Etapa 5: Conclusão
Tentei mostrar como é fácil fazer a interface de dispositivos com o ESP8266.
Originalmente, usei minha placa com um Arduino e me perguntei se poderia dirigi-la com um ESP8266.
Você não precisa conectar tantos LEDs como eu tenho, mas seu programa ainda precisa enviar os 36 elementos de dados para o dispositivo.