volatileuint32_t isr_count[]={0,0,0,0,0};voidisrA(){
isr_count[0]++;
Serial.println("ISR A");}voidisrB(){
isr_count[1]++;
Serial.println("ISR B");}voidisrC(){
isr_count[2]++;
Serial.println("ISR C");}voidisrD(){
isr_count[3]++;
Serial.println("ISR D");}voidisrE(){
isr_count[4]++;
Serial.println("ISR E");}voidsetup(){// Fubraino Mini 2.0 Pins that work with attachInterrupt: 0, 3, 4, 6, 24pinMode(0, INPUT);// Interrupt pin must be an inputpinMode(3, INPUT);// Interrupt pin must be an inputpinMode(4, INPUT);// Interrupt pin must be an inputpinMode(6, INPUT);// Interrupt pin must be an inputpinMode(24, INPUT);// Interrupt pin must be an inputpinMode(LED_BUILTIN, OUTPUT);digitalWrite(LED_BUILTIN, LOW);
Serial.begin(115200);// Open the Serial Portwhile(!Serial);delay(100);// Give the serial terminal chance to openattachInterrupt(digitalPinToInterrupt(0), isrA, FALLING);attachInterrupt(digitalPinToInterrupt(3), isrB, FALLING);attachInterrupt(digitalPinToInterrupt(4), isrC, RISING);attachInterrupt(digitalPinToInterrupt(6), isrD, RISING);attachInterrupt(digitalPinToInterrupt(24), isrE, RISING);
Serial.println("Fubarino attachInterrupt...");}voidloop(){digitalWrite(LED_BUILTIN,!digitalRead(LED_BUILTIN));// toggle pin LED_BUILTIN// original code uses lessthan but change to not equal for YouTubefor(int i =0; i !=sizeof(isr_count)/sizeof(uint32_t); i++){
Serial.print((char)('A'+ i));
Serial.print("=");
Serial.print(isr_count[i], DEC);
Serial.print(",");
isr_count[i]=0;}
Serial.println();delay(1000);}