embkernel
 All Classes Functions Variables Typedefs Groups Pages
RtosInterrupt.hpp
1 //------------------------------------------------------------------------------
2 //This file is part of embKernel.
3 //See license.txt for the full license governing this code.
4 //------------------------------------------------------------------------------
5 
6 #ifndef RTOS_INTERRUPT_HPP_
7 #define RTOS_INTERRUPT_HPP_
8 
9 #include "stm32f10x.h"
10 
11 class RtosInterrupt {
12 public:
13  static void IRQ_NonMaskableInt();
14  static void IRQ_HardFault();
15  static void IRQ_MemoryManagement();
16  static void IRQ_BusFault();
17  static void IRQ_UsageFault();
18  static void IRQ_SVCall();
19  static void IRQ_DebugMonitor();
20  static void IRQ_PendSV();
21  static void IRQ_SysTick();
25 
26  static void IRQ_WWDG(); //Window WatchDog Interrupt
27  static void IRQ_PVD(); //PVD through EXTI Line detection Interrupt
28  static void IRQ_TAMPER(); //Tamper Interrupt
29  static void IRQ_RTC(); //RTC global Interrupt
30  static void IRQ_FLASH(); //FLASH global Interrupt
31  static void IRQ_RCC(); //RCC global Interrupt
32  static void IRQ_EXTI0(); //EXTI Line0 Interrupt
33  static void IRQ_EXTI1(); //EXTI Line1 Interrupt
34  static void IRQ_EXTI2(); //EXTI Line2 Interrupt
35  static void IRQ_EXTI3(); //EXTI Line3 Interrupt
36  static void IRQ_EXTI4(); //EXTI Line4 Interrupt
37  static void IRQ_DMA1_Channel1(); //DMA1 Channel 1 global Interrupt
38  static void IRQ_DMA1_Channel2(); //DMA1 Channel 2 global Interrupt
39  static void IRQ_DMA1_Channel3(); //DMA1 Channel 3 global Interrupt
40  static void IRQ_DMA1_Channel4(); //DMA1 Channel 4 global Interrupt
41  static void IRQ_DMA1_Channel5(); //DMA1 Channel 5 global Interrupt
42  static void IRQ_DMA1_Channel6(); //DMA1 Channel 6 global Interrupt
43  static void IRQ_DMA1_Channel7(); //DMA1 Channel 7 global Interrupt
44 
45 #ifdef STM32F10X_LD
46  static void IRQ_ADC1_2(); //ADC1 and ADC2 global Interrupt
47  static void IRQ_USB_HP_CAN1_TX();//USB Device High Priority or CAN1 TX Interrupts
48  static void IRQ_USB_LP_CAN1_RX0();//USB Device Low Priority or CAN1 RX0 Interrupts
49  static void IRQ_CAN1_RX1();//CAN1 RX1 Interrupt
50  static void IRQ_CAN1_SCE();//CAN1 SCE Interrupt
51  static void IRQ_EXTI9_5();//External Line[9:5] Interrupts
52  static void IRQ_TIM1_BRK();//TIM1 Break Interrupt
53  static void IRQ_TIM1_UP();//TIM1 Update Interrupt
54  static void IRQ_TIM1_TRG_COM();//TIM1 Trigger and Commutation Interrupt
55  static void IRQ_TIM1_CC();//TIM1 Capture Compare Interrupt
56  static void IRQ_TIM2();//TIM2 global Interrupt
57  static void IRQ_TIM3();//TIM3 global Interrupt
58  static void IRQ_I2C1_EV();//I2C1 Event Interrupt
59  static void IRQ_I2C1_ER();//I2C1 Error Interrupt
60  static void IRQ_SPI1();//SPI1 global Interrupt
61  static void IRQ_USART1();//USART1 global Interrupt
62  static void IRQ_USART2();//USART2 global Interrupt
63  static void IRQ_EXTI15_10();//External Line[15:10] Interrupts
64  static void IRQ_RTCAlarm();//RTC Alarm through EXTI Line Interrupt
65  static void IRQ_USBWakeUp();//USB Device WakeUp from suspend through EXTI Line Interrupt
66 #endif //STM32F10X_LD
67 #ifdef STM32F10X_LD_VL
68  static void IRQ_ADC1(); //ADC1 global Interrupt
69  static void IRQ_EXTI9_5();//External Line[9:5] Interrupts
70  static void IRQ_TIM1_BRK_TIM15();//TIM1 Break and TIM15 Interrupts
71  static void IRQ_TIM1_UP_TIM16();//TIM1 Update and TIM16 Interrupts
72  static void IRQ_TIM1_TRG_COM_TIM17();//TIM1 Trigger and Commutation and TIM17 Interrupt
73  static void IRQ_TIM1_CC();//TIM1 Capture Compare Interrupt
74  static void IRQ_TIM2();//TIM2 global Interrupt
75  static void IRQ_TIM3();//TIM3 global Interrupt
76  static void IRQ_I2C1_EV();//I2C1 Event Interrupt
77  static void IRQ_I2C1_ER();//I2C1 Error Interrupt
78  static void IRQ_SPI1();//SPI1 global Interrupt
79  static void IRQ_USART1();//USART1 global Interrupt
80  static void IRQ_USART2();//USART2 global Interrupt
81  static void IRQ_EXTI15_10();//External Line[15:10] Interrupts
82  static void IRQ_RTCAlarm();//RTC Alarm through EXTI Line Interrupt
83  static void IRQ_CEC();//HDMI-CEC Interrupt
84  static void IRQ_TIM6_DAC();//TIM6 and DAC underrun Interrupt
85  static void IRQ_TIM7();//TIM7 Interrupt
86 #endif //STM32F10X_LD_VL
87 #ifdef STM32F10X_MD
88  static void IRQ_ADC1_2(); //ADC1 and ADC2 global Interrupt
89  static void IRQ_USB_HP_CAN1_TX();//USB Device High Priority or CAN1 TX Interrupts
90  static void IRQ_USB_LP_CAN1_RX0();//USB Device Low Priority or CAN1 RX0 Interrupts
91  static void IRQ_CAN1_RX1();//CAN1 RX1 Interrupt
92  static void IRQ_CAN1_SCE();//CAN1 SCE Interrupt
93  static void IRQ_EXTI9_5();//External Line[9:5] Interrupts
94  static void IRQ_TIM1_BRK();//TIM1 Break Interrupt
95  static void IRQ_TIM1_UP();//TIM1 Update Interrupt
96  static void IRQ_TIM1_TRG_COM();//TIM1 Trigger and Commutation Interrupt
97  static void IRQ_TIM1_CC();//TIM1 Capture Compare Interrupt
98  static void IRQ_TIM2();//TIM2 global Interrupt
99  static void IRQ_TIM3();//TIM3 global Interrupt
100  static void IRQ_TIM4();//TIM4 global Interrupt
101  static void IRQ_I2C1_EV();//I2C1 Event Interrupt
102  static void IRQ_I2C1_ER();//I2C1 Error Interrupt
103  static void IRQ_I2C2_EV();//I2C2 Event Interrupt
104  static void IRQ_I2C2_ER();//I2C2 Error Interrupt
105  static void IRQ_SPI1();//SPI1 global Interrupt
106  static void IRQ_SPI2();//SPI2 global Interrupt
107  static void IRQ_USART1();//USART1 global Interrupt
108  static void IRQ_USART2();//USART2 global Interrupt
109  static void IRQ_USART3();//USART3 global Interrupt
110  static void IRQ_EXTI15_10();//External Line[15:10] Interrupts
111  static void IRQ_RTCAlarm();//RTC Alarm through EXTI Line Interrupt
112  static void IRQ_USBWakeUp();//USB Device WakeUp from suspend through EXTI Line Interrupt
113 #endif //STM32F10X_MD
114 #ifdef STM32F10X_MD_VL
115  static void IRQ_ADC1(); //ADC1 global Interrupt
116  static void IRQ_EXTI9_5();//External Line[9:5] Interrupts
117  static void IRQ_TIM1_BRK_TIM15();//TIM1 Break and TIM15 Interrupts
118  static void IRQ_TIM1_UP_TIM16();//TIM1 Update and TIM16 Interrupts
119  static void IRQ_TIM1_TRG_COM_TIM17();//TIM1 Trigger and Commutation and TIM17 Interrupt
120  static void IRQ_TIM1_CC();//TIM1 Capture Compare Interrupt
121  static void IRQ_TIM2();//TIM2 global Interrupt
122  static void IRQ_TIM3();//TIM3 global Interrupt
123  static void IRQ_TIM4();//TIM4 global Interrupt
124  static void IRQ_I2C1_EV();//I2C1 Event Interrupt
125  static void IRQ_I2C1_ER();//I2C1 Error Interrupt
126  static void IRQ_I2C2_EV();//I2C2 Event Interrupt
127  static void IRQ_I2C2_ER();//I2C2 Error Interrupt
128  static void IRQ_SPI1();//SPI1 global Interrupt
129  static void IRQ_SPI2();//SPI2 global Interrupt
130  static void IRQ_USART1();//USART1 global Interrupt
131  static void IRQ_USART2();//USART2 global Interrupt
132  static void IRQ_USART3();//USART3 global Interrupt
133  static void IRQ_EXTI15_10();//External Line[15:10] Interrupts
134  static void IRQ_RTCAlarm();//RTC Alarm through EXTI Line Interrupt
135  static void IRQ_CEC();//HDMI-CEC Interrupt
136  static void IRQ_TIM6_DAC();//TIM6 and DAC underrun Interrupt
137  static void IRQ_TIM7();//TIM7 Interrupt
138 #endif //STM32F10X_MD_VL
139 #ifdef STM32F10X_HD
140  static void IRQ_ADC1_2(); //ADC1 and ADC2 global Interrupt
141  static void IRQ_USB_HP_CAN1_TX();//USB Device High Priority or CAN1 TX Interrupts
142  static void IRQ_USB_LP_CAN1_RX0();//USB Device Low Priority or CAN1 RX0 Interrupts
143  static void IRQ_CAN1_RX1();//CAN1 RX1 Interrupt
144  static void IRQ_CAN1_SCE();//CAN1 SCE Interrupt
145  static void IRQ_EXTI9_5();//External Line[9:5] Interrupts
146  static void IRQ_TIM1_BRK();//TIM1 Break Interrupt
147  static void IRQ_TIM1_UP();//TIM1 Update Interrupt
148  static void IRQ_TIM1_TRG_COM();//TIM1 Trigger and Commutation Interrupt
149  static void IRQ_TIM1_CC();//TIM1 Capture Compare Interrupt
150  static void IRQ_TIM2();//TIM2 global Interrupt
151  static void IRQ_TIM3();//TIM3 global Interrupt
152  static void IRQ_TIM4();//TIM4 global Interrupt
153  static void IRQ_I2C1_EV();//I2C1 Event Interrupt
154  static void IRQ_I2C1_ER();//I2C1 Error Interrupt
155  static void IRQ_I2C2_EV();//I2C2 Event Interrupt
156  static void IRQ_I2C2_ER();//I2C2 Error Interrupt
157  static void IRQ_SPI1();//SPI1 global Interrupt
158  static void IRQ_SPI2();//SPI2 global Interrupt
159  static void IRQ_USART1();//USART1 global Interrupt
160  static void IRQ_USART2();//USART2 global Interrupt
161  static void IRQ_USART3();//USART3 global Interrupt
162  static void IRQ_EXTI15_10();//External Line[15:10] Interrupts
163  static void IRQ_RTCAlarm();//RTC Alarm through EXTI Line Interrupt
164  static void IRQ_USBWakeUp();//USB Device WakeUp from suspend through EXTI Line Interrupt
165  static void IRQ_TIM8_BRK();//TIM8 Break Interrupt
166  static void IRQ_TIM8_UP();//TIM8 Update Interrupt
167  static void IRQ_TIM8_TRG_COM();//TIM8 Trigger and Commutation Interrupt
168  static void IRQ_TIM8_CC();//TIM8 Capture Compare Interrupt
169  static void IRQ_ADC3();//ADC3 global Interrupt
170  static void IRQ_FSMC();//FSMC global Interrupt
171  static void IRQ_SDIO();//SDIO global Interrupt
172  static void IRQ_TIM5();//TIM5 global Interrupt
173  static void IRQ_SPI3();//SPI3 global Interrupt
174  static void IRQ_UART4();//UART4 global Interrupt
175  static void IRQ_UART5();//UART5 global Interrupt
176  static void IRQ_TIM6();//TIM6 global Interrupt
177  static void IRQ_TIM7();//TIM7 global Interrupt
178  static void IRQ_DMA2_Channel1();//DMA2 Channel 1 global Interrupt
179  static void IRQ_DMA2_Channel2();//DMA2 Channel 2 global Interrupt
180  static void IRQ_DMA2_Channel3();//DMA2 Channel 3 global Interrupt
181  static void IRQ_DMA2_Channel4_5();//DMA2 Channel 4 and Channel 5 global Interrupt
182 #endif //STM32F10X_HD
183 #ifdef STM32F10X_HD_VL
184  static void IRQ_ADC1(); //ADC1 global Interrupt
185  static void IRQ_EXTI9_5();//External Line[9:5] Interrupts
186  static void IRQ_TIM1_BRK_TIM15();//TIM1 Break and TIM15 Interrupts
187  static void IRQ_TIM1_UP_TIM16();//TIM1 Update and TIM16 Interrupts
188  static void IRQ_TIM1_TRG_COM_TIM17();//TIM1 Trigger and Commutation and TIM17 Interrupt
189  static void IRQ_TIM1_CC();//TIM1 Capture Compare Interrupt
190  static void IRQ_TIM2();//TIM2 global Interrupt
191  static void IRQ_TIM3();//TIM3 global Interrupt
192  static void IRQ_TIM4();//TIM4 global Interrupt
193  static void IRQ_I2C1_EV();//I2C1 Event Interrupt
194  static void IRQ_I2C1_ER();//I2C1 Error Interrupt
195  static void IRQ_I2C2_EV();//I2C2 Event Interrupt
196  static void IRQ_I2C2_ER();//I2C2 Error Interrupt
197  static void IRQ_SPI1();//SPI1 global Interrupt
198  static void IRQ_SPI2();//SPI2 global Interrupt
199  static void IRQ_USART1();//USART1 global Interrupt
200  static void IRQ_USART2();//USART2 global Interrupt
201  static void IRQ_USART3();//USART3 global Interrupt
202  static void IRQ_EXTI15_10();//External Line[15:10] Interrupts
203  static void IRQ_RTCAlarm();//RTC Alarm through EXTI Line Interrupt
204  static void IRQ_CEC();//HDMI-CEC Interrupt
205  static void IRQ_TIM12();//TIM12 global Interrupt
206  static void IRQ_TIM13();//TIM13 global Interrupt
207  static void IRQ_TIM14();//TIM14 global Interrupt
208  static void IRQ_TIM5();//TIM5 global Interrupt
209  static void IRQ_SPI3();//SPI3 global Interrupt
210  static void IRQ_UART4();//UART4 global Interrupt
211  static void IRQ_UART5();//UART5 global Interrupt
212  static void IRQ_TIM6_DAC();//TIM6 and DAC underrun Interrupt
213  static void IRQ_TIM7();//TIM7 Interrupt
214  static void IRQ_DMA2_Channel1();//DMA2 Channel 1 global Interrupt
215  static void IRQ_DMA2_Channel2();//DMA2 Channel 2 global Interrupt
216  static void IRQ_DMA2_Channel3();//DMA2 Channel 3 global Interrupt
217  static void IRQ_DMA2_Channel4_5();//DMA2 Channel 4 and Channel 5 global Interrupt
218  static void IRQ_DMA2_Channel5();//DMA2 Channel 5 global Interrupt
219 #endif //STM32F10X_HD_VL
220 #ifdef STM32F10X_XL
221  static void IRQ_ADC1_2(); //ADC1 and ADC2 global Interrupt
222  static void IRQ_USB_HP_CAN1_TX();//USB Device High Priority or CAN1 TX Interrupts
223  static void IRQ_USB_LP_CAN1_RX0();//USB Device Low Priority or CAN1 RX0 Interrupts
224  static void IRQ_CAN1_RX1();//CAN1 RX1 Interrupt
225  static void IRQ_CAN1_SCE();//CAN1 SCE Interrupt
226  static void IRQ_EXTI9_5();//External Line[9:5] Interrupts
227  static void IRQ_TIM1_BRK_TIM9();//TIM1 Break Interrupt and TIM9 global Interrupt
228  static void IRQ_TIM1_UP_TIM10();//TIM1 Update Interrupt and TIM10 global Interrupt
229  static void IRQ_TIM1_TRG_COM_TIM11();//TIM1 Trigger and Commutation Interrupt and TIM11 global interrupt
230  static void IRQ_TIM1_CC();//TIM1 Capture Compare Interrupt
231  static void IRQ_TIM2();//TIM2 global Interrupt
232  static void IRQ_TIM3();//TIM3 global Interrupt
233  static void IRQ_TIM4();//TIM4 global Interrupt
234  static void IRQ_I2C1_EV();//I2C1 Event Interrupt
235  static void IRQ_I2C1_ER();//I2C1 Error Interrupt
236  static void IRQ_I2C2_EV();//I2C2 Event Interrupt
237  static void IRQ_I2C2_ER();//I2C2 Error Interrupt
238  static void IRQ_SPI1();//SPI1 global Interrupt
239  static void IRQ_SPI2();//SPI2 global Interrupt
240  static void IRQ_USART1();//USART1 global Interrupt
241  static void IRQ_USART2();//USART2 global Interrupt
242  static void IRQ_USART3();//USART3 global Interrupt
243  static void IRQ_EXTI15_10();//External Line[15:10] Interrupts
244  static void IRQ_RTCAlarm();//RTC Alarm through EXTI Line Interrupt
245  static void IRQ_USBWakeUp();//USB Device WakeUp from suspend through EXTI Line Interrupt
246  static void IRQ_TIM8_BRK_TIM12();//TIM8 Break Interrupt and TIM12 global Interrupt
247  static void IRQ_TIM8_UP_TIM13();//TIM8 Update Interrupt and TIM13 global Interrupt
248  static void IRQ_TIM8_TRG_COM_TIM14();//TIM8 Trigger and Commutation Interrupt and TIM14 global interrupt
249  static void IRQ_TIM8_CC();//TIM8 Capture Compare Interrupt
250  static void IRQ_ADC3();//ADC3 global Interrupt
251  static void IRQ_FSMC();//FSMC global Interrupt
252  static void IRQ_SDIO();//SDIO global Interrupt
253  static void IRQ_TIM5();//TIM5 global Interrupt
254  static void IRQ_SPI3();//SPI3 global Interrupt
255  static void IRQ_UART4();//UART4 global Interrupt
256  static void IRQ_UART5();//UART5 global Interrupt
257  static void IRQ_TIM6();//TIM6 global Interrupt
258  static void IRQ_TIM7();//TIM7 global Interrupt
259  static void IRQ_DMA2_Channel1();//DMA2 Channel 1 global Interrupt
260  static void IRQ_DMA2_Channel2();//DMA2 Channel 2 global Interrupt
261  static void IRQ_DMA2_Channel3();//DMA2 Channel 3 global Interrupt
262  static void IRQ_DMA2_Channel4_5();//DMA2 Channel 4 and Channel 5 global Interrupt
263 #endif //STM32F10X_XL
264 #ifdef STM32F10X_CL
265  static void IRQ_ADC1_2(); //ADC1 and ADC2 global Interrupt
266  static void IRQ_CAN1_TX();//USB Device High Priority or CAN1 TX Interrupts
267  static void IRQ_CAN1_RX0();//USB Device Low Priority or CAN1 RX0 Interrupts
268  static void IRQ_CAN1_RX1();//CAN1 RX1 Interrupt
269  static void IRQ_CAN1_SCE();//CAN1 SCE Interrupt
270  static void IRQ_EXTI9_5();//External Line[9:5] Interrupts
271  static void IRQ_TIM1_BRK();//TIM1 Break Interrupt
272  static void IRQ_TIM1_UP();//TIM1 Update Interrupt
273  static void IRQ_TIM1_TRG_COM();//TIM1 Trigger and Commutation Interrupt
274  static void IRQ_TIM1_CC();//TIM1 Capture Compare Interrupt
275  static void IRQ_TIM2();//TIM2 global Interrupt
276  static void IRQ_TIM3();//TIM3 global Interrupt
277  static void IRQ_TIM4();//TIM4 global Interrupt
278  static void IRQ_I2C1_EV();//I2C1 Event Interrupt
279  static void IRQ_I2C1_ER();//I2C1 Error Interrupt
280  static void IRQ_I2C2_EV();//I2C2 Event Interrupt
281  static void IRQ_I2C2_ER();//I2C2 Error Interrupt
282  static void IRQ_SPI1();//SPI1 global Interrupt
283  static void IRQ_SPI2();//SPI2 global Interrupt
284  static void IRQ_USART1();//USART1 global Interrupt
285  static void IRQ_USART2();//USART2 global Interrupt
286  static void IRQ_USART3();//USART3 global Interrupt
287  static void IRQ_EXTI15_10();//External Line[15:10] Interrupts
288  static void IRQ_RTCAlarm();//RTC Alarm through EXTI Line Interrupt
289  static void IRQ_OTG_FS_WKUP();//USB OTG FS WakeUp from suspend through EXTI Line Interrupt
290  static void IRQ_TIM5();//TIM5 global Interrupt
291  static void IRQ_SPI3();//SPI3 global Interrupt
292  static void IRQ_UART4();//UART4 global Interrupt
293  static void IRQ_UART5();//UART5 global Interrupt
294  static void IRQ_TIM6();//TIM6 global Interrupt
295  static void IRQ_TIM7();//TIM7 global Interrupt
296  static void IRQ_DMA2_Channel1();//DMA2 Channel 1 global Interrupt
297  static void IRQ_DMA2_Channel2();//DMA2 Channel 2 global Interrupt
298  static void IRQ_DMA2_Channel3();//DMA2 Channel 3 global Interrupt
299  static void IRQ_DMA2_Channel4();//DMA2 Channel 4 global Interrupt
300  static void IRQ_DMA2_Channel5();//DMA2 Channel 5 global Interrupt
301  static void IRQ_ETH();//Ethernet global Interrupt
302  static void IRQ_ETH_WKUP();//Ethernet Wakeup through EXTI line Interrupt
303  static void IRQ_CAN2_TX();//CAN2 TX Interrupt
304  static void IRQ_CAN2_RX0();//CAN2 RX0 Interrupt
305  static void IRQ_CAN2_RX1();//CAN2 RX1 Interrupt
306  static void IRQ_CAN2_SCE();//CAN2 SCE Interrupt
307  static void IRQ_OTG_FS();//USB OTG FS global Interrupt
308 #endif //STM32F10X_CL
309 };
310 
311 #endif /*RTOS_INTERRUPT_HPP_*/