Ok, não vou então usar o PIR neste pino, tenho então de fazer algumas alterações, uma solução seria passar 2 buzzers, que estão ligados num pino digital, para o Shift Register que estou a usar 74hc595 (que tb está cheio), trocava uns LEDs que estão ligados neste SR e metia-os então no pino RX\TX do ATMega que já não devem interferir com a ligação serial.
Posto isto fiquei com outra dúvida, neste momento tendo os buzzers ligados directamente ao pino digital e para fazer algo como 'Bip Bip' basta fazer isto:
digitalWrite(Buzzers, HIGH);
delay(100);
digitalWrite(Buzzers, LOW);
delay(100);
digitalWrite(Buzzers, HIGH);
delay(100);
digitalWrite(Buzzers, LOW);
Se passar os buzzers para o shift register teria que fazer algo deste tipo:
BitsVAR[2]=1; //pino no SR onde estariam os buzzers. LIGA
for (int i = 7; i >= 0; i--) {
bitWrite(dataOut, i, BitsVAR[i]);
}
pinMode(latchPin, OUTPUT);
digitalWrite(latchPin, 0);
shiftOut(dataPin, clockPin, dataOut);
digitalWrite(latchPin, 1);
BitsVAR[2]=0; // DESLIGA
for (int i = 7; i >= 0; i--) {
bitWrite(dataOut, i, BitsVAR[i]);
}
pinMode(latchPin, OUTPUT);
digitalWrite(latchPin, 0);
shiftOut(dataPin, clockPin, dataOut);
digitalWrite(latchPin, 1);
BitsVAR[2]=1; //LIGA
for (int i = 7; i >= 0; i--) {
bitWrite(dataOut, i, BitsVAR[i]);
}
pinMode(latchPin, OUTPUT);
digitalWrite(latchPin, 0);
shiftOut(dataPin, clockPin, dataOut);
digitalWrite(latchPin, 1);
BitsVAR[2]=0; //DESLIGA
for (int i = 7; i >= 0; i--) {
bitWrite(dataOut, i, BitsVAR[i]);
}
pinMode(latchPin, OUTPUT);
digitalWrite(latchPin, 0);
shiftOut(dataPin, clockPin, dataOut);
digitalWrite(latchPin, 1);
Ou estou a pensar mal? se estiver correcto será que iria existir algum atraso significativo a tocar os buzzers?