вот так делается пустое прерывание
EMPTY_INTERRUPT(vector);
или что то же самое
void vector (void) __attribute__ ((naked));
void vector (void) { __asm__ __volatile__ ("reti" :

; }
где на место vector подставляем свой interrupt
например TIMER1_OVF_vect
можно так же перенаправить все неиспользованные прерывания на
один обработчик
ISR(__vector_default);
или что то же самое
void vector (void) __attribute__ ((signal));
void vector (void) {}
соответственно можно написать вот так:
EMPTY_INTERRUPT(__vector_default);
правда тогда reti подставится не в саму таблицу а в отдельную функцию
чтобы подставить прямо в таблицу нужно прописать EMPTY_INTERRUPT для каждого
неиспользуемого
только нужно не забыть
#include <avr/interrupt.h>