Mi situación es la siguiente, quiero usar dos CNY70 para el conteo de pacientes dentro de un hospital. Según el orden de activación quiero que sume o reste pacientes y no sé qué hacer.
Anexo el código que he estado probando.
int ct=0, CxI=2, CxO=3;
int IN=0, OUT=0;
void setup(){
Serial.begin(9600);
pinMode(CxI,INPUT),pinMode(CxO,INPUT);
attachInterrupt(RISE,CxI,FALLING);
attachInterrupt(DECREASE,CxO,FALLING);
}
void loop(){
IN=!digitalRead(CxI);
OUT=!digitalRead(CxO);
}
void RISE() {
if(IN==0){
for(int i=0;i>=5000;i++){
if(OUT==0) {
ct++;
Serial.println(ct);
}
}
}
}
void DECREASE() {
if(OUT==0){
for(int j=0;j>=5000;j++){
if(IN==0) {
ct--;
Serial.println(ct);
}
}
}
}
cny_digital.ino (607 Bytes)