root / arduino-1.0 / hardware / arduino / bootloaders / stk500v2 / avrinterruptnames.h @ 58d82c77
History | View | Annotate | Download (19.1 KB)
1 | 58d82c77 | Tom Mullins | //**************************************************************************************************
|
---|---|---|---|
2 | //*
|
||
3 | //* interrupt vector names
|
||
4 | //*
|
||
5 | //* It is important to note that the vector numbers listed here
|
||
6 | //* are the ATMEL documentation numbers. The Arduino numbers are 1 less
|
||
7 | //* This is because the Atmel docs start numbering the interrupts at 1
|
||
8 | //* when it is actually vector #0 in the table.
|
||
9 | //**************************************************************************************************
|
||
10 | //* Jun 1, 2010 <MLS> Added support for ATmega1281
|
||
11 | //* Jun 30, 2010 <MLS> Putting in more ifdefs to conserve space
|
||
12 | //* Jul 3, 2010 <MLS> More #ifdefs to conserve space and testing on most of my boards
|
||
13 | //* Jul 4, 2010 <MLS> Started using vector defs for #ifdefs as defined in <avr/io.h>
|
||
14 | //* Jul 13, 2010 <MLS> Added support for __AVR_ATmega128__
|
||
15 | //* Aug 26, 2010 <MLS> Added support for __AVR_ATmega2561__
|
||
16 | //**************************************************************************************************
|
||
17 | |||
18 | //#include "avrinterruptnames.h"
|
||
19 | |||
20 | //**************************************************************************************************
|
||
21 | //* this defines the interrupt vectors and allows us to compile ONLY those strings that are actually
|
||
22 | //* in the target CPU. This way we do not have to keep making changes based on cpu, it will be
|
||
23 | //* automatic even if we add a new CPU
|
||
24 | #ifndef _AVR_IO_H_
|
||
25 | #include <avr/io.h> |
||
26 | #endif
|
||
27 | //**************************************************************************************************
|
||
28 | |||
29 | #ifdef __MWERKS__
|
||
30 | #define prog_char char |
||
31 | #define PGM_P char * |
||
32 | #endif
|
||
33 | |||
34 | prog_char gAvrInt_RESET[] PROGMEM = "RESET";
|
||
35 | #ifdef INT0_vect
|
||
36 | prog_char gAvrInt_INT0[] PROGMEM = "INT0";
|
||
37 | #endif
|
||
38 | #ifdef INT1_vect
|
||
39 | prog_char gAvrInt_INT1[] PROGMEM = "INT1";
|
||
40 | #endif
|
||
41 | #ifdef INT2_vect
|
||
42 | prog_char gAvrInt_INT2[] PROGMEM = "INT2";
|
||
43 | #endif
|
||
44 | #ifdef INT3_vect
|
||
45 | prog_char gAvrInt_INT3[] PROGMEM = "INT3";
|
||
46 | #endif
|
||
47 | #ifdef INT4_vect
|
||
48 | prog_char gAvrInt_INT4[] PROGMEM = "INT4";
|
||
49 | #endif
|
||
50 | #ifdef INT5_vect
|
||
51 | prog_char gAvrInt_INT5[] PROGMEM = "INT5";
|
||
52 | #endif
|
||
53 | #ifdef INT6_vect
|
||
54 | prog_char gAvrInt_INT6[] PROGMEM = "INT6";
|
||
55 | #endif
|
||
56 | #ifdef INT7_vect
|
||
57 | prog_char gAvrInt_INT7[] PROGMEM = "INT7";
|
||
58 | #endif
|
||
59 | #ifdef PCINT0_vect
|
||
60 | prog_char gAvrInt_PCINT0[] PROGMEM = "PCINT0";
|
||
61 | #endif
|
||
62 | #ifdef PCINT1_vect
|
||
63 | prog_char gAvrInt_PCINT1[] PROGMEM = "PCINT1";
|
||
64 | #endif
|
||
65 | #ifdef PCINT2_vect
|
||
66 | prog_char gAvrInt_PCINT2[] PROGMEM = "PCINT2";
|
||
67 | #endif
|
||
68 | #ifdef PCINT3_vect
|
||
69 | prog_char gAvrInt_PCINT3[] PROGMEM = "PCINT3";
|
||
70 | #endif
|
||
71 | #ifdef WDT_vect
|
||
72 | prog_char gAvrInt_WDT[] PROGMEM = "WDT";
|
||
73 | #endif
|
||
74 | #ifdef TIMER0_COMP_vect
|
||
75 | prog_char gAvrInt_TIMER0_COMP[] PROGMEM = "TIMER0 COMP";
|
||
76 | #endif
|
||
77 | #ifdef TIMER0_COMPA_vect
|
||
78 | prog_char gAvrInt_TIMER0_COMPA[] PROGMEM = "TIMER0 COMPA";
|
||
79 | #endif
|
||
80 | #ifdef TIMER0_COMPB_vect
|
||
81 | prog_char gAvrInt_TIMER0_COMPB[] PROGMEM = "TIMER0 COMPB";
|
||
82 | #endif
|
||
83 | #ifdef TIMER0_OVF_vect
|
||
84 | prog_char gAvrInt_TIMER0_OVF[] PROGMEM = "TIMER0 OVF";
|
||
85 | #endif
|
||
86 | #ifdef TIMER1_CAPT_vect
|
||
87 | prog_char gAvrInt_TIMER1_CAPT[] PROGMEM = "TIMER1 CAPT";
|
||
88 | #endif
|
||
89 | #ifdef TIMER1_COMPA_vect
|
||
90 | prog_char gAvrInt_TIMER1_COMPA[] PROGMEM = "TIMER1 COMPA";
|
||
91 | #endif
|
||
92 | #ifdef TIMER1_COMPB_vect
|
||
93 | prog_char gAvrInt_TIMER1_COMPB[] PROGMEM = "TIMER1 COMPB";
|
||
94 | #endif
|
||
95 | #ifdef TIMER1_COMPC_vect
|
||
96 | prog_char gAvrInt_TIMER1_COMPC[] PROGMEM = "TIMER1 COMPC";
|
||
97 | #endif
|
||
98 | #ifdef TIMER1_OVF_vect
|
||
99 | prog_char gAvrInt_TIMER1_OVF[] PROGMEM = "TIMER1 OVF";
|
||
100 | #endif
|
||
101 | #ifdef TIMER2_COMP_vect
|
||
102 | prog_char gAvrInt_TIMER2_COMP[] PROGMEM = "TIMER2 COMP";
|
||
103 | #endif
|
||
104 | #ifdef TIMER2_COMPA_vect
|
||
105 | prog_char gAvrInt_TIMER2_COMPA[] PROGMEM = "TIMER2 COMPA";
|
||
106 | #endif
|
||
107 | #ifdef TIMER2_COMPB_vect
|
||
108 | prog_char gAvrInt_TIMER2_COMPB[] PROGMEM = "TIMER2 COMPB";
|
||
109 | #endif
|
||
110 | #ifdef TIMER2_OVF_vect
|
||
111 | prog_char gAvrInt_TIMER2_OVF[] PROGMEM = "TIMER2 OVF";
|
||
112 | #endif
|
||
113 | #ifdef TIMER3_CAPT_vect
|
||
114 | prog_char gAvrInt_TIMER3_CAPT[] PROGMEM = "TIMER3 CAPT";
|
||
115 | #endif
|
||
116 | #ifdef TIMER3_COMPA_vect
|
||
117 | prog_char gAvrInt_TIMER3_COMPA[] PROGMEM = "TIMER3 COMPA";
|
||
118 | #endif
|
||
119 | #ifdef TIMER3_COMPB_vect
|
||
120 | prog_char gAvrInt_TIMER3_COMPB[] PROGMEM = "TIMER3 COMPB";
|
||
121 | #endif
|
||
122 | #ifdef TIMER3_COMPC_vect
|
||
123 | prog_char gAvrInt_TIMER3_COMPC[] PROGMEM = "TIMER3 COMPC";
|
||
124 | #endif
|
||
125 | #ifdef TIMER3_OVF_vect
|
||
126 | prog_char gAvrInt_TIMER3_OVF[] PROGMEM = "TIMER3 OVF";
|
||
127 | #endif
|
||
128 | #ifdef TIMER4_CAPT_vect
|
||
129 | prog_char gAvrInt_TIMER4_CAPT[] PROGMEM = "TIMER4 CAPT";
|
||
130 | #endif
|
||
131 | #ifdef TIMER4_COMPA_vect
|
||
132 | prog_char gAvrInt_TIMER4_COMPA[] PROGMEM = "TIMER4 COMPA";
|
||
133 | #endif
|
||
134 | #ifdef TIMER4_COMPB_vect
|
||
135 | prog_char gAvrInt_TIMER4_COMPB[] PROGMEM = "TIMER4 COMPB";
|
||
136 | #endif
|
||
137 | #ifdef TIMER4_COMPC_vect
|
||
138 | prog_char gAvrInt_TIMER4_COMPC[] PROGMEM = "TIMER4 COMPC";
|
||
139 | #endif
|
||
140 | #ifdef TIMER4_COMPD_vect
|
||
141 | prog_char gAvrInt_TIMER4_COMPD[] PROGMEM = "TIMER4 COMPD";
|
||
142 | #endif
|
||
143 | #ifdef TIMER4_OVF_vect
|
||
144 | prog_char gAvrInt_TIMER4_OVF[] PROGMEM = "TIMER4 OVF";
|
||
145 | #endif
|
||
146 | #ifdef TIMER4_FPF_vect
|
||
147 | prog_char gAvrInt_TIMER4_FPF[] PROGMEM = "TIMER4 Fault Protection";
|
||
148 | #endif
|
||
149 | #ifdef TIMER5_CAPT_vect
|
||
150 | prog_char gAvrInt_TIMER5_CAPT[] PROGMEM = "TIMER5 CAPT";
|
||
151 | #endif
|
||
152 | #ifdef TIMER5_COMPA_vect
|
||
153 | prog_char gAvrInt_TIMER5_COMPA[] PROGMEM = "TIMER5 COMPA";
|
||
154 | #endif
|
||
155 | #ifdef TIMER5_COMPB_vect
|
||
156 | prog_char gAvrInt_TIMER5_COMPB[] PROGMEM = "TIMER5 COMPB";
|
||
157 | #endif
|
||
158 | #ifdef TIMER5_COMPC_vect
|
||
159 | prog_char gAvrInt_TIMER5_COMPC[] PROGMEM = "TIMER5 COMPC";
|
||
160 | #endif
|
||
161 | #ifdef TIMER5_OVF_vect
|
||
162 | prog_char gAvrInt_TIMER5_OVF[] PROGMEM = "TIMER5 OVF";
|
||
163 | #endif
|
||
164 | |||
165 | //* when there is only 1 usart
|
||
166 | #if defined(USART_RX_vect) || defined(USART_RXC_vect)
|
||
167 | prog_char gAvrInt_USART_RX[] PROGMEM = "USART RX";
|
||
168 | #endif
|
||
169 | #if defined(USART_UDRE_vect)
|
||
170 | prog_char gAvrInt_USART_UDRE[] PROGMEM = "USART UDRE";
|
||
171 | #endif
|
||
172 | #if defined(USART_TX_vect) || defined(USART_TXC_vect)
|
||
173 | prog_char gAvrInt_USART_TX[] PROGMEM = "USART TX";
|
||
174 | #endif
|
||
175 | |||
176 | |||
177 | //* usart 0
|
||
178 | #if defined(USART0_RX_vect)
|
||
179 | prog_char gAvrInt_USART0_RX[] PROGMEM = "USART0 RX";
|
||
180 | #endif
|
||
181 | #if defined(USART0_UDRE_vect)
|
||
182 | prog_char gAvrInt_USART0_UDRE[] PROGMEM = "USART0 UDRE";
|
||
183 | #endif
|
||
184 | #if defined(USART0_TX_vect)
|
||
185 | prog_char gAvrInt_USART0_TX[] PROGMEM = "USART0 TX";
|
||
186 | #endif
|
||
187 | |||
188 | |||
189 | //* usart 1
|
||
190 | #ifdef USART1_RX_vect
|
||
191 | prog_char gAvrInt_USART1_RX[] PROGMEM = "USART1 RX";
|
||
192 | #endif
|
||
193 | #ifdef USART1_UDRE_vect
|
||
194 | prog_char gAvrInt_USART1_UDRE[] PROGMEM = "USART1 UDRE";
|
||
195 | #endif
|
||
196 | #ifdef USART1_TX_vect
|
||
197 | prog_char gAvrInt_USART1_TX[] PROGMEM = "USART1 TX";
|
||
198 | #endif
|
||
199 | |||
200 | //* usart 2
|
||
201 | #ifdef USART2_RX_vect
|
||
202 | prog_char gAvrInt_USART2_RX[] PROGMEM = "USART2 RX";
|
||
203 | #endif
|
||
204 | #ifdef USART2_UDRE_vect
|
||
205 | prog_char gAvrInt_USART2_UDRE[] PROGMEM = "USART2 UDRE";
|
||
206 | #endif
|
||
207 | #ifdef USART2_TX_vect
|
||
208 | prog_char gAvrInt_USART2_TX[] PROGMEM = "USART2 TX";
|
||
209 | #endif
|
||
210 | |||
211 | //* usart 3
|
||
212 | #ifdef USART3_RX_vect
|
||
213 | prog_char gAvrInt_USART3_RX[] PROGMEM = "USART3 RX";
|
||
214 | #endif
|
||
215 | #ifdef USART3_UDRE_vect
|
||
216 | prog_char gAvrInt_USART3_UDRE[] PROGMEM = "USART3 UDRE";
|
||
217 | #endif
|
||
218 | #ifdef USART3_TX_vect
|
||
219 | prog_char gAvrInt_USART3_TX[] PROGMEM = "USART3 TX";
|
||
220 | #endif
|
||
221 | #ifdef SPI_STC_vect
|
||
222 | prog_char gAvrInt_SPI_STC[] PROGMEM = "SPI STC";
|
||
223 | #endif
|
||
224 | #ifdef ADC_vect
|
||
225 | prog_char gAvrInt_ADC[] PROGMEM = "ADC";
|
||
226 | #endif
|
||
227 | #if defined(ANALOG_COMP_vect) || defined(ANA_COMP_vect)
|
||
228 | prog_char gAvrInt_ANALOG_COMP[] PROGMEM = "ANALOG COMP";
|
||
229 | #endif
|
||
230 | #if defined(EE_READY_vect) || defined(EE_RDY_vect)
|
||
231 | prog_char gAvrInt_EE_READY[] PROGMEM = "EE READY";
|
||
232 | #endif
|
||
233 | #ifdef TWI_vect
|
||
234 | prog_char gAvrInt_TWI[] PROGMEM = "TWI";
|
||
235 | #endif
|
||
236 | #if defined(SPM_READY_vect) || defined(SPM_RDY_vect)
|
||
237 | prog_char gAvrInt_SPM_READY[] PROGMEM = "SPM READY";
|
||
238 | #endif
|
||
239 | #ifdef USI_START_vect
|
||
240 | prog_char gAvrInt_USI_START[] PROGMEM = "USI START";
|
||
241 | #endif
|
||
242 | #ifdef USI_OVERFLOW_vect
|
||
243 | prog_char gAvrInt_USI_OVERFLOW[] PROGMEM = "USI OVERFLOW";
|
||
244 | #endif
|
||
245 | #ifdef USB_GEN_vect
|
||
246 | prog_char gAvrInt_USB_General[] PROGMEM = "USB General";
|
||
247 | #endif
|
||
248 | #ifdef USB_COM_vect
|
||
249 | prog_char gAvrInt_USB_Endpoint[] PROGMEM = "USB Endpoint";
|
||
250 | #endif
|
||
251 | |||
252 | #ifdef LCD_vect
|
||
253 | prog_char gAvrInt_LCD_StartFrame[] PROGMEM = "LCD Start of Frame";
|
||
254 | #endif
|
||
255 | |||
256 | |||
257 | //**************************************************************************************************
|
||
258 | //* these do not have vector defs and have to be done by CPU type
|
||
259 | #if defined(__AVR_ATmega645__ ) || defined(__AVR_ATmega1281__) || defined(__AVR_ATmega2561__)
|
||
260 | prog_char gAvrInt_NOT_USED[] PROGMEM = "NOT_USED";
|
||
261 | #endif
|
||
262 | #if defined(__AVR_ATmega32U4__)
|
||
263 | prog_char gAvrInt_RESERVED[] PROGMEM = "Reserved";
|
||
264 | #endif
|
||
265 | |||
266 | prog_char gAvrInt_END[] PROGMEM = "*";
|
||
267 | |||
268 | |||
269 | |||
270 | |||
271 | |||
272 | //**************************************************************************************************
|
||
273 | #if defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__)
|
||
274 | #pragma mark __AVR_ATmega168__ / __AVR_ATmega328P__
|
||
275 | |||
276 | #define _INTERRUPT_NAMES_DEFINED_
|
||
277 | |||
278 | PGM_P gInterruptNameTable[] PROGMEM = |
||
279 | { |
||
280 | |||
281 | gAvrInt_RESET, // 1
|
||
282 | gAvrInt_INT0, // 2
|
||
283 | gAvrInt_INT1, // 3
|
||
284 | gAvrInt_PCINT0, // 4
|
||
285 | gAvrInt_PCINT1, // 5
|
||
286 | gAvrInt_PCINT2, // 6
|
||
287 | gAvrInt_WDT, // 7
|
||
288 | gAvrInt_TIMER2_COMPA, // 8
|
||
289 | gAvrInt_TIMER2_COMPB, // 9
|
||
290 | gAvrInt_TIMER2_OVF, // 10
|
||
291 | gAvrInt_TIMER1_CAPT, // 11
|
||
292 | gAvrInt_TIMER1_COMPA, // 12
|
||
293 | gAvrInt_TIMER1_COMPB, // 13
|
||
294 | gAvrInt_TIMER1_OVF, // 14
|
||
295 | gAvrInt_TIMER0_COMPA, // 15
|
||
296 | gAvrInt_TIMER0_COMPB, // 16
|
||
297 | gAvrInt_TIMER0_OVF, // 17
|
||
298 | gAvrInt_SPI_STC, // 18
|
||
299 | gAvrInt_USART_RX, // 19
|
||
300 | gAvrInt_USART_UDRE, // 20
|
||
301 | gAvrInt_USART_TX, // 21
|
||
302 | gAvrInt_ADC, // 22
|
||
303 | gAvrInt_EE_READY, // 23
|
||
304 | gAvrInt_ANALOG_COMP, // 24
|
||
305 | gAvrInt_TWI, // 25
|
||
306 | gAvrInt_SPM_READY, // 26
|
||
307 | }; |
||
308 | |||
309 | #endif
|
||
310 | |||
311 | //**************************************************************************************************
|
||
312 | #pragma mark __AVR_ATmega169__
|
||
313 | #if defined(__AVR_ATmega169__)
|
||
314 | |||
315 | #define _INTERRUPT_NAMES_DEFINED_
|
||
316 | |||
317 | PGM_P gInterruptNameTable[] PROGMEM = |
||
318 | { |
||
319 | |||
320 | gAvrInt_RESET, // 1
|
||
321 | gAvrInt_INT0, // 2
|
||
322 | gAvrInt_PCINT0, // 3
|
||
323 | gAvrInt_PCINT1, // 4
|
||
324 | gAvrInt_TIMER2_COMP, // 5
|
||
325 | gAvrInt_TIMER2_OVF, // 6
|
||
326 | gAvrInt_TIMER1_CAPT, // 7
|
||
327 | gAvrInt_TIMER1_COMPA, // 8
|
||
328 | gAvrInt_TIMER1_COMPB, // 9
|
||
329 | gAvrInt_TIMER1_OVF, // 10
|
||
330 | gAvrInt_TIMER0_COMP, // 11
|
||
331 | gAvrInt_TIMER0_OVF, // 12
|
||
332 | gAvrInt_SPI_STC, // 13
|
||
333 | gAvrInt_USART0_RX, // 14
|
||
334 | gAvrInt_USART0_UDRE, // 15
|
||
335 | gAvrInt_USART0_TX, // 16
|
||
336 | gAvrInt_USI_START, // 17
|
||
337 | gAvrInt_USI_OVERFLOW, // 18
|
||
338 | gAvrInt_ANALOG_COMP, // 19
|
||
339 | gAvrInt_ADC, // 20
|
||
340 | gAvrInt_EE_READY, // 21
|
||
341 | gAvrInt_SPM_READY, // 22
|
||
342 | gAvrInt_LCD_StartFrame, // 23
|
||
343 | |||
344 | }; |
||
345 | |||
346 | #endif
|
||
347 | |||
348 | |||
349 | //**************************************************************************************************
|
||
350 | #if defined(__AVR_ATmega640__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1281__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega2561__)
|
||
351 | #pragma mark __AVR_ATmega640__ __AVR_ATmega1280__ __AVR_ATmega1281__ __AVR_ATmega2560__ __AVR_ATmega2561__
|
||
352 | |||
353 | #define _INTERRUPT_NAMES_DEFINED_
|
||
354 | |||
355 | PGM_P gInterruptNameTable[] PROGMEM = |
||
356 | { |
||
357 | |||
358 | gAvrInt_RESET, // 1
|
||
359 | gAvrInt_INT0, // 2
|
||
360 | gAvrInt_INT1, // 3
|
||
361 | gAvrInt_INT2, // 4
|
||
362 | gAvrInt_INT3, // 5
|
||
363 | gAvrInt_INT4, // 6
|
||
364 | gAvrInt_INT5, // 7
|
||
365 | gAvrInt_INT6, // 8
|
||
366 | gAvrInt_INT7, // 9
|
||
367 | gAvrInt_PCINT0, // 10
|
||
368 | gAvrInt_PCINT1, // 11
|
||
369 | #if defined(__AVR_ATmega640__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
|
||
370 | gAvrInt_PCINT2, // 12
|
||
371 | #else
|
||
372 | gAvrInt_NOT_USED, // 12
|
||
373 | #endif
|
||
374 | gAvrInt_WDT, // 13
|
||
375 | gAvrInt_TIMER2_COMPA, // 14
|
||
376 | gAvrInt_TIMER2_COMPB, // 15
|
||
377 | gAvrInt_TIMER2_OVF, // 16
|
||
378 | gAvrInt_TIMER1_CAPT, // 17
|
||
379 | gAvrInt_TIMER1_COMPA, // 18
|
||
380 | gAvrInt_TIMER1_COMPB, // 19
|
||
381 | gAvrInt_TIMER1_COMPC, // 20
|
||
382 | gAvrInt_TIMER1_OVF, // 21
|
||
383 | gAvrInt_TIMER0_COMPA, // 22
|
||
384 | gAvrInt_TIMER0_COMPB, // 23
|
||
385 | gAvrInt_TIMER0_OVF, // 24
|
||
386 | gAvrInt_SPI_STC, // 25
|
||
387 | |||
388 | gAvrInt_USART0_RX, // 26
|
||
389 | gAvrInt_USART0_UDRE, // 27
|
||
390 | gAvrInt_USART0_TX, // 28
|
||
391 | gAvrInt_ANALOG_COMP, // 29
|
||
392 | gAvrInt_ADC, // 30
|
||
393 | gAvrInt_EE_READY, // 31
|
||
394 | |||
395 | gAvrInt_TIMER3_CAPT, // 32
|
||
396 | gAvrInt_TIMER3_COMPA, // 33
|
||
397 | gAvrInt_TIMER3_COMPB, // 34
|
||
398 | gAvrInt_TIMER3_COMPC, // 35
|
||
399 | gAvrInt_TIMER3_OVF, // 36
|
||
400 | |||
401 | gAvrInt_USART1_RX, // 37
|
||
402 | gAvrInt_USART1_UDRE, // 38
|
||
403 | gAvrInt_USART1_TX, // 39
|
||
404 | gAvrInt_TWI, // 40
|
||
405 | gAvrInt_SPM_READY, // 41
|
||
406 | #if defined(__AVR_ATmega640__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
|
||
407 | gAvrInt_TIMER4_CAPT, // 42
|
||
408 | #else
|
||
409 | gAvrInt_NOT_USED, // 42
|
||
410 | #endif
|
||
411 | gAvrInt_TIMER4_COMPA, // 43
|
||
412 | gAvrInt_TIMER4_COMPB, // 44
|
||
413 | gAvrInt_TIMER4_COMPC, // 45
|
||
414 | gAvrInt_TIMER4_OVF, // 46
|
||
415 | #if defined(__AVR_ATmega640__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
|
||
416 | gAvrInt_TIMER5_CAPT, // 47
|
||
417 | #else
|
||
418 | gAvrInt_NOT_USED, // 47
|
||
419 | #endif
|
||
420 | gAvrInt_TIMER5_COMPA, // 48
|
||
421 | gAvrInt_TIMER5_COMPB, // 49
|
||
422 | gAvrInt_TIMER5_COMPC, // 50
|
||
423 | gAvrInt_TIMER5_OVF, // 51
|
||
424 | |||
425 | #if defined(__AVR_ATmega640__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
|
||
426 | gAvrInt_USART2_RX, // 52
|
||
427 | gAvrInt_USART2_UDRE, // 53
|
||
428 | gAvrInt_USART2_TX, // 54
|
||
429 | |||
430 | gAvrInt_USART3_RX, // 55
|
||
431 | gAvrInt_USART3_UDRE, // 56
|
||
432 | gAvrInt_USART3_TX, // 57
|
||
433 | #endif
|
||
434 | |||
435 | }; |
||
436 | |||
437 | #endif
|
||
438 | |||
439 | |||
440 | |||
441 | //**************************************************************************************************
|
||
442 | #if defined(__AVR_ATmega324P__ ) || defined(__AVR_ATmega644__ ) || defined(__AVR_ATmega644P__) || defined(__AVR_ATmega1284P__)
|
||
443 | #pragma mark __AVR_ATmega324P__ __AVR_ATmega644__ __AVR_ATmega644P__ __AVR_ATmega1284P__
|
||
444 | |||
445 | #define _INTERRUPT_NAMES_DEFINED_
|
||
446 | |||
447 | PGM_P gInterruptNameTable[] PROGMEM = |
||
448 | { |
||
449 | |||
450 | gAvrInt_RESET, // 1
|
||
451 | gAvrInt_INT0, // 2
|
||
452 | gAvrInt_INT1, // 3
|
||
453 | gAvrInt_INT2, // 4
|
||
454 | gAvrInt_PCINT0, // 5
|
||
455 | gAvrInt_PCINT1, // 6
|
||
456 | gAvrInt_PCINT2, // 7
|
||
457 | gAvrInt_PCINT3, // 8
|
||
458 | gAvrInt_WDT, // 9
|
||
459 | gAvrInt_TIMER2_COMPA, // 10
|
||
460 | gAvrInt_TIMER2_COMPB, // 11
|
||
461 | gAvrInt_TIMER2_OVF, // 12
|
||
462 | gAvrInt_TIMER1_CAPT, // 13
|
||
463 | gAvrInt_TIMER1_COMPA, // 14
|
||
464 | gAvrInt_TIMER1_COMPB, // 15
|
||
465 | gAvrInt_TIMER1_OVF, // 16
|
||
466 | gAvrInt_TIMER0_COMPA, // 17
|
||
467 | gAvrInt_TIMER0_COMPB, // 18
|
||
468 | gAvrInt_TIMER0_OVF, // 19
|
||
469 | gAvrInt_SPI_STC, // 20
|
||
470 | gAvrInt_USART0_RX, // 21
|
||
471 | gAvrInt_USART0_UDRE, // 22
|
||
472 | gAvrInt_USART0_TX, // 23
|
||
473 | gAvrInt_ANALOG_COMP, // 24
|
||
474 | gAvrInt_ADC, // 25
|
||
475 | gAvrInt_EE_READY, // 26
|
||
476 | gAvrInt_TWI, // 27
|
||
477 | gAvrInt_SPM_READY, // 28
|
||
478 | |||
479 | #if defined(__AVR_ATmega324P__ ) || defined(__AVR_ATmega644P__)
|
||
480 | gAvrInt_USART1_RX, // 29
|
||
481 | gAvrInt_USART1_UDRE, // 30
|
||
482 | gAvrInt_USART1_TX, // 31
|
||
483 | #endif
|
||
484 | |||
485 | }; |
||
486 | |||
487 | |||
488 | #endif
|
||
489 | |||
490 | //**************************************************************************************************
|
||
491 | #if defined(__AVR_ATmega645__ )
|
||
492 | #pragma mark __AVR_ATmega645__
|
||
493 | |||
494 | #define _INTERRUPT_NAMES_DEFINED_
|
||
495 | |||
496 | PGM_P gInterruptNameTable[] PROGMEM = |
||
497 | { |
||
498 | |||
499 | gAvrInt_RESET, // 1
|
||
500 | gAvrInt_INT0, // 2
|
||
501 | gAvrInt_PCINT0, // 3
|
||
502 | gAvrInt_PCINT1, // 4
|
||
503 | gAvrInt_TIMER2_COMP, // 5
|
||
504 | gAvrInt_TIMER2_OVF, // 6
|
||
505 | gAvrInt_TIMER1_CAPT, // 7
|
||
506 | gAvrInt_TIMER1_COMPA, // 8
|
||
507 | gAvrInt_TIMER1_COMPB, // 9
|
||
508 | gAvrInt_TIMER1_OVF, // 10
|
||
509 | gAvrInt_TIMER0_COMP, // 11
|
||
510 | gAvrInt_TIMER0_OVF, // 12
|
||
511 | gAvrInt_SPI_STC, // 13
|
||
512 | gAvrInt_USART0_RX, // 14
|
||
513 | gAvrInt_USART0_UDRE, // 15
|
||
514 | gAvrInt_USART0_TX, // 16
|
||
515 | gAvrInt_USI_START, // 17
|
||
516 | gAvrInt_USI_OVERFLOW, // 18
|
||
517 | gAvrInt_ANALOG_COMP, // 19
|
||
518 | gAvrInt_ADC, // 20
|
||
519 | gAvrInt_EE_READY, // 21
|
||
520 | gAvrInt_SPM_READY, // 22
|
||
521 | gAvrInt_NOT_USED, // 23
|
||
522 | |||
523 | #if defined(__AVR_ATmega3250__) || defined(__AVR_ATmega6450__)
|
||
524 | gAvrInt_PCINT2, // 24
|
||
525 | gAvrInt_PCINT3, // 25
|
||
526 | #endif
|
||
527 | }; |
||
528 | |||
529 | |||
530 | #endif
|
||
531 | |||
532 | |||
533 | //**************************************************************************************************
|
||
534 | #if defined(__AVR_ATmega32__ )
|
||
535 | #pragma mark __AVR_ATmega32__
|
||
536 | |||
537 | #define _INTERRUPT_NAMES_DEFINED_
|
||
538 | |||
539 | PGM_P gInterruptNameTable[] PROGMEM = |
||
540 | { |
||
541 | |||
542 | gAvrInt_RESET, // 1
|
||
543 | gAvrInt_INT0, // 2
|
||
544 | gAvrInt_INT1, // 3
|
||
545 | gAvrInt_INT2, // 4
|
||
546 | gAvrInt_TIMER2_COMP, // 5
|
||
547 | gAvrInt_TIMER2_OVF, // 6
|
||
548 | gAvrInt_TIMER1_CAPT, // 7
|
||
549 | gAvrInt_TIMER1_COMPA, // 8
|
||
550 | gAvrInt_TIMER1_COMPB, // 9
|
||
551 | gAvrInt_TIMER1_OVF, // 10
|
||
552 | gAvrInt_TIMER0_COMP, // 11
|
||
553 | gAvrInt_TIMER0_OVF, // 12
|
||
554 | gAvrInt_SPI_STC, // 13
|
||
555 | gAvrInt_USART_RX, // 14
|
||
556 | gAvrInt_USART_UDRE, // 15
|
||
557 | gAvrInt_USART_TX, // 16
|
||
558 | gAvrInt_ADC, // 17
|
||
559 | gAvrInt_EE_READY, // 18
|
||
560 | gAvrInt_ANALOG_COMP, // 19
|
||
561 | gAvrInt_TWI, // 20
|
||
562 | gAvrInt_SPM_READY, // 21
|
||
563 | |||
564 | }; |
||
565 | |||
566 | |||
567 | #endif
|
||
568 | |||
569 | //**************************************************************************************************
|
||
570 | #if defined(__AVR_ATmega32U4__)
|
||
571 | #pragma mark __AVR_ATmega32U4__
|
||
572 | //* teensy 2.0
|
||
573 | //* http://www.pjrc.com/teensy/pinout.html
|
||
574 | #define _INTERRUPT_NAMES_DEFINED_
|
||
575 | |||
576 | |||
577 | PGM_P gInterruptNameTable[] PROGMEM = |
||
578 | { |
||
579 | |||
580 | gAvrInt_RESET, // 1
|
||
581 | gAvrInt_INT0, // 2
|
||
582 | gAvrInt_INT1, // 3
|
||
583 | gAvrInt_INT2, // 4
|
||
584 | gAvrInt_INT3, // 5
|
||
585 | gAvrInt_RESERVED, // 6
|
||
586 | gAvrInt_RESERVED, // 7
|
||
587 | gAvrInt_INT6, // 8
|
||
588 | gAvrInt_RESERVED, // 9
|
||
589 | gAvrInt_PCINT0, // 10
|
||
590 | gAvrInt_USB_General, // 11
|
||
591 | gAvrInt_USB_Endpoint, // 12
|
||
592 | gAvrInt_WDT, // 13
|
||
593 | gAvrInt_RESERVED, // 14
|
||
594 | gAvrInt_RESERVED, // 15
|
||
595 | gAvrInt_RESERVED, // 16
|
||
596 | gAvrInt_TIMER1_CAPT, // 17
|
||
597 | gAvrInt_TIMER1_COMPA, // 18
|
||
598 | gAvrInt_TIMER1_COMPB, // 19
|
||
599 | gAvrInt_TIMER1_COMPC, // 20
|
||
600 | gAvrInt_TIMER1_OVF, // 21
|
||
601 | gAvrInt_TIMER0_COMPA, // 22
|
||
602 | gAvrInt_TIMER0_COMPB, // 23
|
||
603 | gAvrInt_TIMER0_OVF, // 24
|
||
604 | gAvrInt_SPI_STC, // 25
|
||
605 | |||
606 | gAvrInt_USART1_RX, // 26
|
||
607 | gAvrInt_USART1_UDRE, // 27
|
||
608 | gAvrInt_USART1_TX, // 28
|
||
609 | gAvrInt_ANALOG_COMP, // 29
|
||
610 | |||
611 | gAvrInt_ADC, // 30
|
||
612 | gAvrInt_EE_READY, // 31
|
||
613 | |||
614 | gAvrInt_TIMER3_CAPT, // 32
|
||
615 | gAvrInt_TIMER3_COMPA, // 33
|
||
616 | gAvrInt_TIMER3_COMPB, // 34
|
||
617 | gAvrInt_TIMER3_COMPC, // 35
|
||
618 | gAvrInt_TIMER3_OVF, // 36
|
||
619 | gAvrInt_TWI, // 37
|
||
620 | gAvrInt_SPM_READY, // 38
|
||
621 | |||
622 | gAvrInt_TIMER4_COMPA, // 39
|
||
623 | gAvrInt_TIMER4_COMPB, // 40
|
||
624 | gAvrInt_TIMER4_COMPD, // 41
|
||
625 | gAvrInt_TIMER4_OVF, // 42
|
||
626 | gAvrInt_TIMER4_FPF, // 43
|
||
627 | }; |
||
628 | |||
629 | #endif
|
||
630 | |||
631 | //**************************************************************************************************
|
||
632 | #if defined(__AVR_AT90USB1286__)
|
||
633 | #pragma mark __AVR_AT90USB1286__
|
||
634 | //* teensy++ 2.0
|
||
635 | //* http://www.pjrc.com/teensy/pinout.html
|
||
636 | #define _INTERRUPT_NAMES_DEFINED_
|
||
637 | |||
638 | |||
639 | PGM_P gInterruptNameTable[] PROGMEM = |
||
640 | { |
||
641 | |||
642 | gAvrInt_RESET, // 1
|
||
643 | gAvrInt_INT0, // 2
|
||
644 | gAvrInt_INT1, // 3
|
||
645 | gAvrInt_INT2, // 4
|
||
646 | gAvrInt_INT3, // 5
|
||
647 | gAvrInt_INT4, // 6
|
||
648 | gAvrInt_INT5, // 7
|
||
649 | gAvrInt_INT6, // 8
|
||
650 | gAvrInt_INT7, // 9
|
||
651 | gAvrInt_PCINT0, // 10
|
||
652 | gAvrInt_USB_General, // 11
|
||
653 | gAvrInt_USB_Endpoint, // 12
|
||
654 | gAvrInt_WDT, // 13
|
||
655 | gAvrInt_TIMER2_COMPA, // 14
|
||
656 | gAvrInt_TIMER2_COMPB, // 15
|
||
657 | gAvrInt_TIMER2_OVF, // 16
|
||
658 | gAvrInt_TIMER1_CAPT, // 17
|
||
659 | gAvrInt_TIMER1_COMPA, // 18
|
||
660 | gAvrInt_TIMER1_COMPB, // 19
|
||
661 | gAvrInt_TIMER1_COMPC, // 20
|
||
662 | gAvrInt_TIMER1_OVF, // 21
|
||
663 | gAvrInt_TIMER0_COMPA, // 22
|
||
664 | gAvrInt_TIMER0_COMPB, // 23
|
||
665 | gAvrInt_TIMER0_OVF, // 24
|
||
666 | gAvrInt_SPI_STC, // 25
|
||
667 | |||
668 | gAvrInt_USART1_RX, // 26
|
||
669 | gAvrInt_USART1_UDRE, // 27
|
||
670 | gAvrInt_USART1_TX, // 28
|
||
671 | gAvrInt_ANALOG_COMP, // 29
|
||
672 | |||
673 | gAvrInt_ADC, // 30
|
||
674 | gAvrInt_EE_READY, // 31
|
||
675 | |||
676 | gAvrInt_TIMER3_CAPT, // 32
|
||
677 | gAvrInt_TIMER3_COMPA, // 33
|
||
678 | gAvrInt_TIMER3_COMPB, // 34
|
||
679 | gAvrInt_TIMER3_COMPC, // 35
|
||
680 | gAvrInt_TIMER3_OVF, // 36
|
||
681 | gAvrInt_TWI, // 37
|
||
682 | gAvrInt_SPM_READY, // 38
|
||
683 | |||
684 | }; |
||
685 | |||
686 | #endif
|
||
687 | |||
688 | |||
689 | |||
690 | |||
691 | //**************************************************************************************************
|
||
692 | #if defined(__AVR_ATmega128__)
|
||
693 | #pragma mark __AVR_ATmega128__
|
||
694 | #define _INTERRUPT_NAMES_DEFINED_
|
||
695 | |||
696 | |||
697 | PGM_P gInterruptNameTable[] PROGMEM = |
||
698 | { |
||
699 | |||
700 | gAvrInt_RESET, // 1
|
||
701 | gAvrInt_INT0, // 2
|
||
702 | gAvrInt_INT1, // 3
|
||
703 | gAvrInt_INT2, // 4
|
||
704 | gAvrInt_INT3, // 5
|
||
705 | gAvrInt_INT4, // 6
|
||
706 | gAvrInt_INT5, // 7
|
||
707 | gAvrInt_INT6, // 8
|
||
708 | gAvrInt_INT7, // 9
|
||
709 | gAvrInt_TIMER2_COMP, // 10
|
||
710 | gAvrInt_TIMER2_OVF, // 11
|
||
711 | gAvrInt_TIMER1_CAPT, // 12
|
||
712 | gAvrInt_TIMER1_COMPA, // 13
|
||
713 | gAvrInt_TIMER1_COMPB, // 14
|
||
714 | gAvrInt_TIMER1_OVF, // 15
|
||
715 | gAvrInt_TIMER0_COMP, // 16
|
||
716 | gAvrInt_TIMER0_OVF, // 17
|
||
717 | gAvrInt_SPI_STC, // 18
|
||
718 | gAvrInt_USART0_RX, // 19
|
||
719 | gAvrInt_USART0_UDRE, // 20
|
||
720 | gAvrInt_USART0_TX, // 21
|
||
721 | gAvrInt_ADC, // 22
|
||
722 | gAvrInt_EE_READY, // 23
|
||
723 | gAvrInt_ANALOG_COMP, // 24
|
||
724 | gAvrInt_TIMER1_COMPC, // 25
|
||
725 | gAvrInt_TIMER3_CAPT, // 26
|
||
726 | gAvrInt_TIMER3_COMPA, // 27
|
||
727 | gAvrInt_TIMER3_COMPB, // 28
|
||
728 | gAvrInt_TIMER3_COMPC, // 29
|
||
729 | gAvrInt_TIMER3_OVF, // 30
|
||
730 | gAvrInt_USART1_RX, // 31
|
||
731 | gAvrInt_USART1_UDRE, // 32
|
||
732 | gAvrInt_USART1_TX, // 33
|
||
733 | gAvrInt_TWI, // 34
|
||
734 | gAvrInt_SPM_READY, // 35
|
||
735 | |||
736 | }; |
||
737 | |||
738 | #endif
|
||
739 | |||
740 | #if !defined(_INTERRUPT_NAMES_DEFINED_)
|
||
741 | #warning No interrupt string defs for this cpu |
||
742 | #endif |