Hi there!
I have a problem with interrupts on a Giga R1. I have written a program that controls relays, acquires data from various sensors, and uses interrupts to count pulses and increment the values of some variables.
// Configurazione interrupt
attachInterrupt(digitalPinToInterrupt(contatore_1), conta_impulsi_1, RISING);
attachInterrupt(digitalPinToInterrupt(contatore_2), conta_impulsi_2, RISING);
attachInterrupt(digitalPinToInterrupt(contatore_3), conta_impulsi_3, RISING);
attachInterrupt(digitalPinToInterrupt(contatore_4), conta_impulsi_4, RISING);
attachInterrupt(digitalPinToInterrupt(contatore_5), conta_impulsi_5, RISING);
attachInterrupt(digitalPinToInterrupt(contatore_6), conta_impulsi_6, RISING);
attachInterrupt(digitalPinToInterrupt(contatore_7), conta_impulsi_7, RISING);
attachInterrupt(digitalPinToInterrupt(contatore_8), conta_impulsi_8, RISING);
Serial.print("uno");
/*attachInterrupt(digitalPinToInterrupt(cont_EV_1), conta_impulsi_EV_1, RISING);
attachInterrupt(digitalPinToInterrupt(cont_EV_2), conta_impulsi_EV_2, RISING);
attachInterrupt(digitalPinToInterrupt(cont_EV_3), conta_impulsi_EV_3, RISING);
attachInterrupt(digitalPinToInterrupt(cont_EV_4), conta_impulsi_EV_4, RISING);
attachInterrupt(digitalPinToInterrupt(cont_EV_5), conta_impulsi_EV_5, RISING);
attachInterrupt(digitalPinToInterrupt(cont_EV_6), conta_impulsi_EV_6, RISING);
attachInterrupt(digitalPinToInterrupt(cont_EV_7), conta_impulsi_EV_7, RISING);
attachInterrupt(digitalPinToInterrupt(cont_EV_8), conta_impulsi_EV_8, RISING);
*/
Serial.print("due");
pinMode(contatore_1, INPUT_PULLUP);
pinMode(contatore_2, INPUT_PULLUP);
pinMode(contatore_3, INPUT_PULLUP);
pinMode(contatore_4, INPUT_PULLUP);
pinMode(contatore_5, INPUT_PULLUP);
pinMode(contatore_6, INPUT_PULLUP);
pinMode(contatore_7, INPUT_PULLUP);
pinMode(contatore_8, INPUT_PULLUP);
pinMode(cont_EV_1, INPUT_PULLUP);
pinMode(cont_EV_2, INPUT_PULLUP);
pinMode(cont_EV_3, INPUT_PULLUP);
pinMode(cont_EV_4, INPUT_PULLUP);
pinMode(cont_EV_5, INPUT_PULLUP);
pinMode(cont_EV_6, INPUT_PULLUP);
pinMode(cont_EV_7, INPUT_PULLUP);
pinMode(cont_EV_8, INPUT_PULLUP);
Serial.print("tre");
connessione_al_server();
reset_all();`
So far, I have used 8 pins with interrupts: PIN 40, 41, 42, 43, 48, 49, 50, 51. Now I need to use at least 4 more pins with interrupts. The problem is that as soon as I add even one new interrupt and upload the Arduino program, it freezes!
I have tried various pins, but it freezes every time. Any ideas?