Galera, estou fazendo um expansor de portas, tanto digital como analogico.. e o grande problema esta na programação..
Estou tentando criar uma função que eu vou dizer qual pino do expansor devo escrever HIGH para acionar apenas aquele pino especifico, sem afetar os outros que ja estejam high ou low.
Função Que estou usando.
void invertePino(int pinN, byte endereco){
inicio = inicio ^ (1 pinN);
Wire.beginTransmission(endereco);
Wire.write(inicio);
Wire.endTransmission(endereco);
delay(40);
}
Onde o endereço vai o byte do CI do expansor, no caso 0x20, ou 0x38, depende do expansor..
Alguem pode me ajudar nessa função para deixar um pino especifico HIGH ou LOW e os outros nao serem afetados??
Podem me ajudar tambem a criar uma função para leitura, retornando se o pino esta HIGH ou LOW?
O Expansor analogico deixo para depois, pois a logica teoricamente é a mesma.
Tags:
Não sei porque aqui não da pra escrever o simbolo < duas vezes.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por