Reklama

Vektory přerušení pro mikrokontroléry ATmega v programovacím jazyce C

Úvod

   Při práci s mikrokontroléry ATmega budete využívat zajisté mnoho druhů přerušení. Při programování pomocí programovacího jazyku C je definována obsluha přerušení následujícím způsobem. Zobrazený příklad ukazuje obsluhu externího přerušení pro INT1.

ISR( INT1_vect ) // Za definicí přerušení ISR je nutné zadat požadované přerušení
{
// zdrojový kód, který se má vykonat v obsluze přerušení
}

Tabulku se základními druhy používaných přerušení

Tab. 1: Tabulka vektorů přerušení, převzato z [1]

Adresa Parametr v C (GCC) Popis přerušení
1 0x0000 Externí reset, připojení napájení
2 0x0002 INT0_vect Externí požadavek na přerušení 0
3 0x0004 INT1_vect Externí požadavek na přerušení 1
4 0x0006 TIMER2_COMP_vect Čítač/časovač 2 – shoda komparace
5 0x0008 TIMER2_OVF_vect Čítač /časovač 2 – přetečení
6 0x000A TIMER1_CAPT_vect Čítač /časovač 1 – zachycení
7 0x000C TIMER1_COMPA_vect Čítač /časovač 1 – shoda s komparátorem A
8 0x000E TIMER1_COMPB_vect Čítač /časovač 1 – shoda s komparátorem B
9 0x0010 TIMER1_OVF_vect Čítač /časovač 1 – přetečení
10 0x0012 TIMER0_OVF_vect Čítač /časovač 0 – přetečení
11 0x0014 SPI_STC_vect Dokončení sériového přenosu SPI
12 0x0016 USART_RXC_vect USART – kompletní příjem dat
13 0x0018 USART_UDRE_vect USART – prázdný datový registr
14 0x001A USART_TXC_vect USART – kompletní vyslání dat
15 0x001C ADCvect ADC – dokončení A/D převodu
16 0x001E EE_RDY_vect EEPROM – komunikace připravena
17 0x0020 ANA_COMP_vect Změna výstupu analogového komparátoru
18 0x0022 TWLvect Událost na I2C sběrnici
19 0x0024 INT2_vect Externí požadavek na přerušení 2
20 0x0026 TIMER0_COMP_vect Čítač /časovač 0 – shoda komparace
21 0x0028 SPM_RDY_vect Uložení do programové paměti připraveno

 

  Další zajímavé informace o všech vektorech přerušení pro různé mikrokontroléry AVRlze nalézt zde:http://www.nongnu.org/avr-libc/user-manual/group__avr__interrupts.html C
 

Aktualizace: 3.11.2015
 

[1] FRÝZA, Tomáš., FEDRA, Zbyněk., ŠEBESTA, Jiří. Mikroprocesorová technika. Počítačová cvičení. Elektronické skriptum. Brno: FEKT VUT v Brně, 2009.
Následující a předchozí příspěvek v kategorii:

 

Následující: Vytvoření zpoždění pro mikrokontrolér ATmega v programovacím jazyce C

Předchozí: Vytváření a implementace vlastních bitmap pro grafický displej s řadičem KS0108
 
Tajned facebook
 

Za případné chyby v textu, ve zdrojovém kódě, nebo ve schématickém zapojení se omlouváme.
AUTOŘI NEBEROU ŽÁDNOU ODPOVĚDNOST ZA PŘÍPADNÉ ÚJMY NA ZDRAVÍ ČI MAJETKU.