|
Navigation: Bibliotheken > Interrupt |
![]() ![]()
|
Der Controller stellt eine Vielzahl an Interrupts zur Verfügung. Einige davon werden für Systemfunktionen verwendet und stehen dem Anwender nicht zur Verfügung. Folgende Interrupts können vom Anwender genutzt werden:
Interrupt Name |
Beschreibung |
INT_0 |
externer Interrupt0 |
INT_1 |
externer Interrupt1 |
INT_2 |
externer Interrupt2 |
INT_3 |
externer Interrupt3 (nur Mega128) |
INT_4 |
externer Interrupt4 (nur Mega128) |
INT_5 |
externer Interrupt5 (nur Mega128) |
INT_6 |
externer Interrupt6 (nur Mega128) |
INT_7 |
externer Interrupt7 (nur Mega128) |
INT_TIM1CAPT |
Timer1 Capture |
INT_TIM1CMPA |
Timer1 CompareA |
INT_TIM1CMPB |
Timer1 CompareB |
INT_TIM1OVF |
Timer1 Overflow |
INT_TIM0COMP |
Timer0 Compare |
INT_TIM0OVF |
Timer0 Overflow |
INT_ANA_COMP |
Analog Comparator |
INT_ADC |
ADC |
INT_TIM2COMP |
Timer2 Compare |
INT_TIM2OVF |
Timer2 Overflow |
INT_TIM3CAPT |
Timer3 Capture (nur Mega128) |
INT_TIM3CMPA |
Timer3 CompareA (nur Mega128) |
INT_TIM3CMPB |
Timer3 CompareB (nur Mega128) |
INT_TIM3CMPC |
Timer3 CompareC (nur Mega128) |
INT_TIM3OVF |
Timer3 Overflow (nur Mega128) |
Der betreffende Interrupt muß in einer Interrupt Service Routine (ISR) die entsprechenden Anweisungen erhalten, und der Interrupt muß freigegeben sein. Siehe Beispiel. Während der Abarbeitung einer Interruptroutine wird das Multithreading ausgesetzt.
Ein Signal auf INT_0 beim Einschalten des C-Control Pro Moduls kann das Autostartverhalten stören. Nach der Pinzuordnung von M32 und M128 liegt der INT_0 auf dem gleichen Pin wie der SW1. Wird der SW1 beim Einschalten des Moduls gedrückt, führt dies zur Aktivierung des seriellen Bootloader Modus, und das Programm wird nicht automatisch gestartet.