Het interrupt systeem zorgt er voor dat handelingen kunnen uitgevoerd worden na dat er iets gebeurd is. Wanneer er een interrupt zich voordoet kan er naar een routine gesprongen worden om iets af te handelen. De verschillende onderdelen die gebruik maken van dit systeem hebben elk een interrupt vlag (flag). Met deze kunnen ze dan een interrupt laten genereren.
Het interrupt systeem controleert deze vlaggen continu. Wanneer er een vlag '1' is. Dan zal het interrupt systeem de program counter (PC) naar een bepaald adres laten springen.
Het interruptsysteem wordt geactiveerd door het SEI-bit in het status register. Als dit bit = 0 dan is het systeem gedeäctiveerd, bij een 1 is het geäctiveerd.
Wanneer een interrupt wordt gegenereerd, dan wordt er naar een bepaald adres gesprongen. Iedere interruptbron heeft zijn eigen vast adres. Al de adressen van de interruptbronnen bevinden zich in de vector tabel. Het adres van een interruptbron is dus een vector. Bij normale werking van de µC bevindt deze tabel zich bovenaan het programmageheugen. Op adres 0x0000 bevindt zich de reset vector, na een reset wordt er naar deze vector gesprongen. Om de 0x0002 volgt een vector.
| vector nr. | programma adres | bron | omschrijving |
| 1 | 0x0000 | RESET | reset pin, power-on reset ,brown-out,... |
| 2 | 0x0002 | INT0 | externe interrupt vraag 0 |
| 3 | 0x0004 | INT1 | externe interrupt vraag 1 |
| 4 | 0x0006 | INT2 | externe interrupt vraag 2 |
| 5 | 0x0008 | TIMER2 COMP | timer/counter2 compare match |
| 6 | 0x000A | TIMER2 OVF | timer/counter2 overflow |
| 7 | 0x000C | TIMER1 CAPT | timer/counter1 capture event |
| 8 | 0x000E | TIMER1 COMPA | timer/counter2 compare match A |
| 9 | 0x0010 | TIMER1 COMPB | timer/counter2 compare match B |
| 10 | 0x0012 | TIMER1 OVF | timer/counter1 overflow |
| 11 | 0x0014 | TIMER0 COMP | timer/counter0 compare match |
| 12 | 0x0016 | TIMER0 OVF | timer/counter0 overflow |
| 13 | 0x0018 | SPI, STC | serial transfer complete |
| 14 | 0x001A | USART,RXC | USART receive complete |
| 15 | 0x001C | USART,UDRE | USART data register empty |
| 16 | 0x001E | USART,TXC | USART transmit complete |
| 17 | 0x0020 | ADC | ADC conversion complete |
| 18 | 0x0022 | EE_RDY | EEPROM ready |
| 19 | 0x0024 | ANA_COMP | analog comparator |
| 20 | 0x0026 | TWI | two wire serial interface |
| 21 | 0x0028 | SPM_RDY | store program memory ready |
De ene interrupt heeft meer voorrang dan de andere. Dit wil zeggen dat als er 2 interrupts tergelijkertijd optreden, dan zal de interrupt met de hoogste voorrang uit gevoerd woreden. Bij een zelfde voorrang worden deze uitgevoerd volgens de volgorde van de vectortabel. Zolang een programma in een interrupt routine werkt, wordt het interruptsysteem automatisch gestopt (SEI = 0). Alle interrupt die tijdens deze tijd gebeuren worden onthouden. Bij een reti instructie wordt het interruptsysteem terug opgestart (SEI = 1). En worden dan de onthouden interrupts uitgevoerd in de volgorde waarin ze zijn gegenereerd.