Galera, tô com dificuldade nesse expansor digital. Já tinha feito com 16 leds (2 CIs ligados no bus), mas perdi o código que tinha usado. Escrevi novamente, mas desta vez ele não está funcionando. Estou checando as ligacoes do circuito, mas parece que está tudo bem.

Em todo caso, se alguem puder dar uma olhada nesse código, talvez me apontem algum erro que estou deixando passar, e por isso não está funcionando.

Ele só tem que escrever os bytes nos 8 leds de cada PCF8574, contando de zero a 255.

Muito obrigado.

#include <Wire.h>            //inclui a biblioteca

#define mux1 56                 //enderecamento do primeiro multiplexador
#define mux2 57                //enderecamento do segundo multiplexador

void setup()
{
{
Serial.begin(9600);
pinMode(13, OUTPUT);                      //um led so pra saber se o programa ta rodando
}
{
Wire.begin(); //registra no bus
Wire.beginTransmission(mux1);                   //inicia a transmissao pro primeiro mux
Wire.write(B11111111);                               //desliga os 8 bytes do mux
Wire.endTransmission();
}
{
Wire.begin();
Wire.beginTransmission(mux2);
Wire.write(B11111111);
Wire.endTransmission();
}

}
void loop()

{
int t=100;                                                  //intervalo de tempo
int b=(B00000000);                                    //numero do byte
for (b; b<=(B11111111); b++)                      //contando os bytes de 0 a 255, em código binario

{
{
Wire.beginTransmission(mux1);                             //inicia a transmissao pro mux
Wire.write(b);                                                        //escreve o byte nos leds
Wire.endTransmission();                                        //fim da transmissao para o mux
delay (t);
}
{
Wire.beginTransmission(mux2);
Wire.write(b);
Wire.endTransmission();
delay (t);
}

Serial println(b);
Serial.println(b, BIN);                                                   
}
digitalWrite(13, HIGH); // set the LED on
delay(t); // wait for a second
digitalWrite(13, LOW); // set the LED off
delay(t);
}

Exibições: 137

Responder esta

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço