Botão de interrupção não funciona - AttachInterrupt

Fala galera. Resolvi estudar Arduíno e para isso usei o livro Arduíno em Ação, este na foto abaixo.


Fiz o primeiro exercício e tudo bem. Usando a mesma configuração, fui para o segundo exercício, no qual foi adicionado um botão de interrupção e várias alterações no sketch.

  1. O sketch apresentou erros, mas fiz algumas alterações e funcionou na verificação. Os LEDs fazem o programado;
  2. Porém, o botão de interrupção não funciona. Ele não interrompe a sequência dos LEDs. Não sei se é erro na montagem ou do sketch. Troquei até o botão por outro.

Abaixo segue o esquema, seguido da foto da placa e o sketch.


volatile int state = LOW;
int ledArray = {8,9,10,11,12};
int count = 0;
int timer =75;
int pause=500;
void ledOnOff(); // minha alteração
int lastMillis = 20; // minha alteração

void setup() {
for (count=0;count<5;count++) {
pinMode(ledArray[count], OUTPUT);
}
attachInterrupt(0, ledOnOff, RISING);
}

void loop() {
for (count=0; count<5; count++) {
digitalWrite(ledArray[count], HIGH);
delay(timer);
}
delay(pause);
for (count=0; count<5; count++) {
digitalWrite(ledArray[count], LOW);
delay(timer);
}
delay(pause);
}

void ledOnOff() {
static unsigned long newMillis = millis();
if (newMillis - lastMillis < 50) {
}
else {
state =!state;
lastMillis = newMillis;
}
}