-
Notifications
You must be signed in to change notification settings - Fork 1
/
ivectors_mega8.inc
69 lines (57 loc) · 2.06 KB
/
ivectors_mega8.inc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
;=== BEGIN "ivectors.inc" ==================================================
; Òóò ðàñïîëàãàåòñÿ "òàáëèöà âåêòîðîâ íà îáðàáîò÷èêè ïðåðûâàíèé" - âàæíåéøàÿ âåùü!
; Åñëè ïðî íåå çàáûòü, òî ìîæíî îãðåñòè òàêèå íåðàçðåøèìûå ãëþêè, ÷òî ïðîñòî êàïåö. Òàê ÷òî íå çàáûâàåì...
; (Âûíåñåíî èç îáùåãî êîäà â îòäåëüíûé ôàéë - äëÿ îáëåã÷åíèÿ ïîðòèðîâàíèÿ ïðîãðàììû íà äðóãîé êàìåíü...)
;
; ÊÀÊ ÑÄÅËÀÒÜ:
; Ñêîïèðîâàòü ñåêöèþ "INTERRUPT VECTORS" èç HAL-ôàéëà Ìèêðîêîíòðîëëåðà (íàïðèìåð, "tn85def.inc"),
; Çàìåíèòü âñå ".equ" íà ".org"... è äîïèñàòü êî âñåì òî÷êàì âõîäà êîìàíäó RETI.
; (Ýòî íà òîò ñëó÷àé, åñëè Ïðåðûâàíèå ñëó÷àéíî âûëåçåò - ÷òîáû âåðíóòü óïðàâëåíèå òóäà, îòêóäà ïðåðâàëîñü.)
; ***** INTERRUPT VECTORS ************************************************
; Èñïîëüçóåì HAL Ìèêðîêîíòðîëëåðà "ATmega8"
.ORG INT0addr ; External Interrupt Request 0
RETI
.ORG INT1addr ; External Interrupt Request 1
RETI
.ORG OC2addr ; Timer/Counter2 Compare Match
.ifdef RTOS_USE_TIMER2_COMPARE
RJMP RTOS_TIMER_HANDLER
.else
RETI
.endif
.ORG OVF2addr ; Timer/Counter2 Overflow
RETI
.ORG ICP1addr ; Timer/Counter1 Capture Event
RETI
.ORG OC1Aaddr ; Timer/Counter1 Compare Match A
RETI
.ORG OC1Baddr ; Timer/Counter1 Compare Match B
RETI
.ORG OVF1addr ; Timer/Counter1 Overflow
RETI
.ORG OVF0addr ; Timer/Counter0 Overflow
.ifdef RTOS_USE_TIMER0_OVERFLOW
RJMP RTOS_TIMER_HANDLER
.else
RETI
.endif
.ORG SPIaddr ; Serial Transfer Complete
RETI
.ORG URXCaddr ; USART, Rx Complete
RETI
.ORG UDREaddr ; USART Data Register Empty
RETI
.ORG UTXCaddr ; USART, Tx Complete
RETI
.ORG ADCCaddr ; ADC Conversion Complete
RETI
.ORG ERDYaddr ; EEPROM Ready
RETI
.ORG ACIaddr ; Analog Comparator
RETI
.ORG TWIaddr ; 2-wire Serial Interface
RETI
.ORG SPMRaddr ; Store Program Memory Ready
RETI
.ORG INT_VECTORS_SIZE ; Êîíåö òàáëèöû ïðåðûâàíèé
;=== END "ivectors.inc" ====================================================