O código que colocaste serve para melhorar o envio da informação para o SR? Dá para controlar apenas 1 saída é isso?
Melhorar nao, fazer funcionar ja que o teu nao deve produzir o que queres.
Vejamos:
BitsVAR[2]=1; //pino no SR onde estariam os buzzers. LIGA
for (int i = 7; i >= 0; i--) {
bitWrite(dataOut, i, BitsVAR*);*
- }*
- pinMode(latchPin, OUTPUT);*
- digitalWrite(latchPin, 0);*
- shiftOut(dataPin, clockPin, dataOut);*
- digitalWrite(latchPin, 1);*
[/quote]
O teu ciclo for apenas ira colocar a variável dataOut com todos os bits a 1, mas tu só queres tocar no bit 2 certo?!!!
> 1 Botões
> 1 Outro botão
Aqui podes optimizar os dois botões a usares somente o mesmo pino manipulando a resistência em cada botão.Consegues saber que botão foi premido usando apenas um pino analógico.Se formares divisores de tensão com resistências consegues saber qual botão esta premido ou se ambos estão premidos.