ATmega328p
Hardware definitions
Loading...
Searching...
No Matches
atmega328p::interrupts Namespace Reference

Interrupt vector table definitions. More...

Enumerations

enum class  Source : uint8_t {
  INT0 , INT1 , PCINT0 , PCINT1 ,
  PCINT2 , Watchdog , Timer2CompareA , Timer2CompareB ,
  Timer2Overflow , Timer1Capture , Timer1CompareA , Timer1CompareB ,
  Timer1Overflow , Timer0CompareA , Timer0CompareB , Timer0Overflow ,
  SPITransferComplete , USARTReceiveComplete , USARTDataRegisterEmpty , USARTTransmitComplete ,
  ADCConversionComplete , EEPROMReady , AnalogComparator , TWI ,
  SPMReady
}
 Interrupt sources supported by the device. More...
enum class  Vector : uint8_t {
  Reset = 1 , INT0 = 2 , INT1 = 3 , PCINT0 = 4 ,
  PCINT1 = 5 , PCINT2 = 6 , Watchdog = 7 , Timer2CompareA = 8 ,
  Timer2CompareB = 9 , Timer2Overflow = 10 , Timer1Capture = 11 , Timer1CompareA = 12 ,
  Timer1CompareB = 13 , Timer1Overflow = 14 , Timer0CompareA = 15 , Timer0CompareB = 16 ,
  Timer0Overflow = 17 , SPITransferComplete = 18 , USARTReceiveComplete = 19 , USARTDataRegisterEmpty = 20 ,
  USARTTransmitComplete = 21 , ADCConversionComplete = 22 , EEPROMReady = 23 , AnalogComparator = 24 ,
  TWI = 25 , SPMReady = 26
}
 Vector slot numbers, including Reset. More...
enum class  WordAddress : uint8_t {
  Reset = 0x00 , INT0 = 0x02 , INT1 = 0x04 , PCINT0 = 0x06 ,
  PCINT1 = 0x08 , PCINT2 = 0x0A , Watchdog = 0x0C , Timer2CompareA = 0x0E ,
  Timer2CompareB = 0x10 , Timer2Overflow = 0x12 , Timer1Capture = 0x14 , Timer1CompareA = 0x16 ,
  Timer1CompareB = 0x18 , Timer1Overflow = 0x1A , Timer0CompareA = 0x1C , Timer0CompareB = 0x1E ,
  Timer0Overflow = 0x20 , SPITransferComplete = 0x22 , USARTReceiveComplete = 0x24 , USARTDataRegisterEmpty = 0x26 ,
  USARTTransmitComplete = 0x28 , ADCConversionComplete = 0x2A , EEPROMReady = 0x2C , AnalogComparator = 0x2E ,
  TWI = 0x30 , SPMReady = 0x32
}
 Word addresses of the interrupt vectors. More...
enum  : uint8_t { vector_count = 26 , source_count = 25 , vector_size_words = 2 , vector_size_bytes = 4 }

Detailed Description

Interrupt vector table definitions.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum : uint8_t
Enumerator
vector_count 

Number of vector.

source_count 

Number of source.

vector_size_words 

Vector size (words).

vector_size_bytes 

Vector size (bytes).

◆ Source

enum class atmega328p::interrupts::Source : uint8_t
strong

Interrupt sources supported by the device.

Enumerator
INT0 

External interrupt 0.

INT1 

External interrupt 1.

PCINT0 

Pin-change interrupt source 0.

PCINT1 

Pin-change interrupt source 1.

PCINT2 

Pin-change interrupt source 2.

Watchdog 

Watchdog timeout.

Timer2CompareA 

Timer2 compare a.

Timer2CompareB 

Timer2 compare b.

Timer2Overflow 

Timer2 overflow.

Timer1Capture 

Timer1 capture.

Timer1CompareA 

Timer1 compare a.

Timer1CompareB 

Timer1 compare b.

Timer1Overflow 

Timer1 overflow.

Timer0CompareA 

Timer0 compare a.

Timer0CompareB 

Timer0 compare b.

Timer0Overflow 

Timer0 overflow.

SPITransferComplete 

SPI transfer complete.

USARTReceiveComplete 

USART receive complete.

USARTDataRegisterEmpty 

USART transmit data register empty.

USARTTransmitComplete 

USART transmission complete.

ADCConversionComplete 

ADC conversion complete.

EEPROMReady 

EEPROM ready.

AnalogComparator 

Analog comparator output event.

TWI 

TWI interrupt event.

SPMReady 

Store-program-memory ready.

◆ Vector

enum class atmega328p::interrupts::Vector : uint8_t
strong

Vector slot numbers, including Reset.

Enumerator
Reset 

1 - Reset vector.

INT0 

2 - Int0 vector number.

INT1 

3 - Int1 vector number.

PCINT0 

4 - Pin-change interrupt source 0.

PCINT1 

5 - Pin-change interrupt source 1.

PCINT2 

6 - Pin-change interrupt source 2.

Watchdog 

7 - Watchdog vector number.

Timer2CompareA 

8 - Timer2 compare a.

Timer2CompareB 

9 - Timer2 compare b.

Timer2Overflow 

10 - Timer2 overflow.

Timer1Capture 

11 - Timer1 capture.

Timer1CompareA 

12 - Timer1 compare a.

Timer1CompareB 

13 - Timer1 compare b.

Timer1Overflow 

14 - Timer1 overflow.

Timer0CompareA 

15 - Timer0 compare a.

Timer0CompareB 

16 - Timer0 compare b.

Timer0Overflow 

17 - Timer0 overflow.

SPITransferComplete 

18 - Spi transfer complete vector number.

USARTReceiveComplete 

19 - Usart receive complete vector number.

USARTDataRegisterEmpty 

20 - Usart data register empty vector number.

USARTTransmitComplete 

21 - Usart transmit complete vector number.

ADCConversionComplete 

22 - Adc conversion complete vector number.

EEPROMReady 

23 - Eeprom ready vector number.

AnalogComparator 

24 - Analog comparator vector number.

TWI 

25 - Twi vector number.

SPMReady 

26 - Spm ready vector number.

◆ WordAddress

enum class atmega328p::interrupts::WordAddress : uint8_t
strong

Word addresses of the interrupt vectors.

Enumerator
Reset 

0x00 - Reset vector.

INT0 

0x02 - Int0 vector word address.

INT1 

0x04 - Int1 vector word address.

PCINT0 

0x06 - Pin-change interrupt source 0.

PCINT1 

0x08 - Pin-change interrupt source 1.

PCINT2 

0x0A - Pin-change interrupt source 2.

Watchdog 

0x0C - Watchdog vector word address.

Timer2CompareA 

0x0E - Timer2 compare a.

Timer2CompareB 

0x10 - Timer2 compare b.

Timer2Overflow 

0x12 - Timer2 overflow.

Timer1Capture 

0x14 - Timer1 capture.

Timer1CompareA 

0x16 - Timer1 compare a.

Timer1CompareB 

0x18 - Timer1 compare b.

Timer1Overflow 

0x1A - Timer1 overflow.

Timer0CompareA 

0x1C - Timer0 compare a.

Timer0CompareB 

0x1E - Timer0 compare b.

Timer0Overflow 

0x20 - Timer0 overflow.

SPITransferComplete 

0x22 - Spi transfer complete vector word address.

USARTReceiveComplete 

0x24 - Usart receive complete vector word address.

USARTDataRegisterEmpty 

0x26 - Usart data register empty vector word address.

USARTTransmitComplete 

0x28 - Usart transmit complete vector word address.

ADCConversionComplete 

0x2A - Adc conversion complete vector word address.

EEPROMReady 

0x2C - Eeprom ready vector word address.

AnalogComparator 

0x2E - Analog comparator vector word address.

TWI 

0x30 - Twi vector word address.

SPMReady 

0x32 - Spm ready vector word address.