Tool to change all interrupt priorities at once. Check the header file for supported mbed targets.

Dependents:   CC3000_Hostdriver KL25Z_FFT_Demo cc3000_hello_world_demo cc3000_simple_socket_demo ... more

Example

#include "NVIC_set_all_priorities.h"
int main()
{
    NVIC_set_all_irq_priorities(3);
    .....
}
Committer:
frankvnk
Date:
Thu Oct 08 16:45:50 2015 +0000
Revision:
6:c19fcbd73dbc
Parent:
5:b20a6d299688
Child:
7:8acd3bf521ff
Added TARGET_STM32F7/TARGET_DISCO_F746NG

Who changed what in which revision?

UserRevisionLine numberNew contents of line
frankvnk 0:d3f63dfa84b7 1 #ifndef SET_ALL_PRIO
frankvnk 0:d3f63dfa84b7 2 #define SET_ALL_PRIO
frankvnk 0:d3f63dfa84b7 3
frankvnk 0:d3f63dfa84b7 4 #include "mbed.h"
frankvnk 0:d3f63dfa84b7 5
frankvnk 5:b20a6d299688 6 /*
frankvnk 5:b20a6d299688 7 NOTE
frankvnk 5:b20a6d299688 8 ----
frankvnk 5:b20a6d299688 9 SysTick_IRQn is vector -1.
frankvnk 5:b20a6d299688 10 The vector mentioned in the comment after SysTick_IRQn is vector 0
frankvnk 5:b20a6d299688 11 */
frankvnk 5:b20a6d299688 12
frankvnk 0:d3f63dfa84b7 13 enum FIRST_LAST_IRQ {
frankvnk 5:b20a6d299688 14 // ************************** Freescale **************************
frankvnk 5:b20a6d299688 15 // --------- TARGET_K20XX
frankvnk 5:b20a6d299688 16 #ifdef TARGET_K20D50M
frankvnk 5:b20a6d299688 17 first_IRQ_number = SysTick_IRQn, // DMA0_IRQn
frankvnk 5:b20a6d299688 18 last_IRQ_number = SWI_IRQn,
frankvnk 5:b20a6d299688 19 #elif defined TARGET_TEENSY3_1
frankvnk 5:b20a6d299688 20 first_IRQ_number = SysTick_IRQn, // DMA0_IRQn
frankvnk 5:b20a6d299688 21 last_IRQ_number = SWI_IRQn,
frankvnk 5:b20a6d299688 22
frankvnk 5:b20a6d299688 23 // --------- TARGET_K22F
frankvnk 5:b20a6d299688 24 #elif defined TARGET_K22F
frankvnk 5:b20a6d299688 25 first_IRQ_number = SysTick_IRQn, // DMA0_IRQn
frankvnk 5:b20a6d299688 26 last_IRQ_number = Reserved101_IRQn,
frankvnk 5:b20a6d299688 27
frankvnk 5:b20a6d299688 28 // --------- TARGET_KLXX
frankvnk 5:b20a6d299688 29 #elif defined TARGET_KL05Z
frankvnk 5:b20a6d299688 30 first_IRQ_number = SysTick_IRQn, // DMA0_IRQn
frankvnk 5:b20a6d299688 31 last_IRQ_number = PORTB_IRQn,
frankvnk 0:d3f63dfa84b7 32 #elif defined TARGET_KL25Z
frankvnk 5:b20a6d299688 33 first_IRQ_number = SysTick_IRQn, // DMA0_IRQn
frankvnk 5:b20a6d299688 34 last_IRQ_number = PORTD_IRQn,
frankvnk 5:b20a6d299688 35 #elif defined TARGET_KL43Z
frankvnk 5:b20a6d299688 36 first_IRQ_number = SysTick_IRQn, // DMA0_IRQn
frankvnk 5:b20a6d299688 37 last_IRQ_number = PORTCD_IRQn,
nullBoundary 4:6c8e950d8037 38 #elif defined TARGET_KL46Z
frankvnk 5:b20a6d299688 39 first_IRQ_number = SysTick_IRQn, // DMA0_IRQn
frankvnk 5:b20a6d299688 40 last_IRQ_number = PORTC_PORTD_IRQn,
frankvnk 5:b20a6d299688 41
frankvnk 5:b20a6d299688 42 // --------- TARGET_MCU_K64F
frankvnk 5:b20a6d299688 43 #elif defined TARGET_MCU_K64F
frankvnk 5:b20a6d299688 44 first_IRQ_number = SysTick_IRQn, // DMA0_IRQn
frankvnk 5:b20a6d299688 45 last_IRQ_number = ENET_Error_IRQn,
frankvnk 5:b20a6d299688 46
frankvnk 5:b20a6d299688 47 // ************************** Nordic **************************
frankvnk 5:b20a6d299688 48 // --------- TARGET_MCU_NRF51822
frankvnk 5:b20a6d299688 49 #elif defined TARGET_MCU_NRF51822
frankvnk 5:b20a6d299688 50 first_IRQ_number = SysTick_IRQn, // POWER_CLOCK_IRQn
frankvnk 5:b20a6d299688 51 last_IRQ_number = SWI5_IRQn,
frankvnk 5:b20a6d299688 52
frankvnk 5:b20a6d299688 53 // ************************** NXP **************************
frankvnk 5:b20a6d299688 54 #elif defined TARGET_LPC11U6X
frankvnk 5:b20a6d299688 55 first_IRQ_number = SysTick_IRQn, // PIN_INT0_IRQn
frankvnk 5:b20a6d299688 56 last_IRQ_number = USBWAKEUP_IRQn,
frankvnk 5:b20a6d299688 57 #elif defined TARGET_LPC11UXX
frankvnk 5:b20a6d299688 58 first_IRQ_number = SysTick_IRQn, // FLEX_INT0_IRQn
frankvnk 5:b20a6d299688 59 last_IRQ_number = Reserved6_IRQn,
frankvnk 5:b20a6d299688 60 #elif defined TARGET_LPC11XX_11CXX
frankvnk 5:b20a6d299688 61 first_IRQ_number = SysTick_IRQn, // WAKEUP0_IRQn
frankvnk 5:b20a6d299688 62 last_IRQ_number = EINT0_IRQn,
SolderSplashLabs 2:676bbfffe9f6 63 #elif defined TARGET_LPC13XX
frankvnk 5:b20a6d299688 64 first_IRQ_number = SysTick_IRQn, // PIN_INT0_IRQn
frankvnk 5:b20a6d299688 65 last_IRQ_number = Reserved5_IRQn,
frankvnk 5:b20a6d299688 66 #elif defined TARGET_LPC15XX
frankvnk 5:b20a6d299688 67 first_IRQ_number = SysTick_IRQn, // WDT_IRQn
frankvnk 5:b20a6d299688 68 last_IRQ_number = RTC_WAKE_IRQn,
frankvnk 3:01504ecd2025 69 #elif defined TARGET_LPC176X
frankvnk 5:b20a6d299688 70 first_IRQ_number = SysTick_IRQn, // WDT_IRQn
frankvnk 5:b20a6d299688 71 last_IRQ_number = CANActivity_IRQn,
frankvnk 5:b20a6d299688 72 #elif defined TARGET_LPC23XX
frankvnk 5:b20a6d299688 73 first_IRQ_number = TIMER0_IRQn,
frankvnk 5:b20a6d299688 74 last_IRQ_number = I2S_IRQn,
frankvnk 5:b20a6d299688 75 #elif defined TARGET_LPC408X
frankvnk 5:b20a6d299688 76 first_IRQ_number = SysTick_IRQn, // WDT_IRQn
frankvnk 5:b20a6d299688 77 last_IRQ_number = CMP1_IRQn,
frankvnk 5:b20a6d299688 78 #elif defined TARGET_LPC43XX
frankvnk 5:b20a6d299688 79 first_IRQ_number = SysTick_IRQn, // DAC_IRQn
frankvnk 5:b20a6d299688 80 last_IRQ_number = QEI_IRQn,
frankvnk 5:b20a6d299688 81 #elif defined TARGET_LPC81X
frankvnk 5:b20a6d299688 82 first_IRQ_number = SysTick_IRQn, // SPI0_IRQn
frankvnk 5:b20a6d299688 83 last_IRQ_number = PININT7_IRQn,
frankvnk 5:b20a6d299688 84 #elif defined TARGET_LPC82X
frankvnk 5:b20a6d299688 85 first_IRQ_number = SysTick_IRQn, // SPI0_IRQn
frankvnk 5:b20a6d299688 86 last_IRQ_number = PININT7_IRQn,
frankvnk 5:b20a6d299688 87
frankvnk 5:b20a6d299688 88 // ************************** Renesas **************************
frankvnk 5:b20a6d299688 89 // --------- TARGET_RZ_A1H
frankvnk 5:b20a6d299688 90 #elif defined TARGET_RZ_A1H
frankvnk 5:b20a6d299688 91 first_IRQ_number = SGI0_IRQn,
frankvnk 5:b20a6d299688 92 last_IRQ_number = TINT170_IRQn,
frankvnk 5:b20a6d299688 93
frankvnk 5:b20a6d299688 94 // ************************** STM **************************
frankvnk 5:b20a6d299688 95 // --------- TARGET_DISCO_F100RB
frankvnk 5:b20a6d299688 96 #elif defined TARGET_DISCO_F100RB
frankvnk 5:b20a6d299688 97 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 98 last_IRQ_number = DMA1_Channel7_IRQn,
frankvnk 5:b20a6d299688 99 #ifdef STM32F10X_LD
frankvnk 5:b20a6d299688 100 last_IRQ_number = USBWakeUp_IRQn,
frankvnk 5:b20a6d299688 101 #endif /* STM32F10X_LD */
frankvnk 5:b20a6d299688 102 #ifdef STM32F10X_LD_VL
frankvnk 5:b20a6d299688 103 last_IRQ_number = TIM7_IRQn,
frankvnk 5:b20a6d299688 104 #endif /* STM32F10X_LD_VL */
frankvnk 5:b20a6d299688 105 #ifdef STM32F10X_MD
frankvnk 5:b20a6d299688 106 last_IRQ_number = USBWakeUp_IRQn,
frankvnk 5:b20a6d299688 107 #endif /* STM32F10X_MD */
frankvnk 5:b20a6d299688 108 #ifdef STM32F10X_MD_VL
frankvnk 5:b20a6d299688 109 last_IRQ_number = TIM7_IRQn,
frankvnk 5:b20a6d299688 110 #endif /* STM32F10X_MD_VL */
frankvnk 5:b20a6d299688 111 #ifdef STM32F10X_HD
frankvnk 5:b20a6d299688 112 last_IRQ_number = DMA2_Channel4_5_IRQn,
frankvnk 5:b20a6d299688 113 #endif /* STM32F10X_HD */
frankvnk 5:b20a6d299688 114 #ifdef STM32F10X_HD_VL
frankvnk 5:b20a6d299688 115 last_IRQ_number = DMA2_Channel5_IRQn,
frankvnk 5:b20a6d299688 116 #endif /* STM32F10X_HD_VL */
frankvnk 5:b20a6d299688 117 #ifdef STM32F10X_XL
frankvnk 5:b20a6d299688 118 last_IRQ_number = DMA2_Channel4_5_IRQn,
frankvnk 5:b20a6d299688 119 #endif /* STM32F10X_XL */
frankvnk 5:b20a6d299688 120 #ifdef STM32F10X_CL
frankvnk 5:b20a6d299688 121 last_IRQ_number = OTG_FS_IRQn,
frankvnk 5:b20a6d299688 122 #endif /* STM32F10X_CL */
frankvnk 5:b20a6d299688 123
frankvnk 5:b20a6d299688 124 // --------- TARGET_NUCLEO_F103RB
frankvnk 5:b20a6d299688 125 #elif defined TARGET_NUCLEO_F103RB
frankvnk 5:b20a6d299688 126 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 127 last_IRQ_number = DMA1_Channel7_IRQn,
frankvnk 5:b20a6d299688 128 #ifdef STM32F10X_LD
frankvnk 5:b20a6d299688 129 last_IRQ_number = USBWakeUp_IRQn,
frankvnk 5:b20a6d299688 130 #endif /* STM32F10X_LD */
frankvnk 5:b20a6d299688 131 #ifdef STM32F10X_LD_VL
frankvnk 5:b20a6d299688 132 last_IRQ_number = TIM7_IRQn,
frankvnk 5:b20a6d299688 133 #endif /* STM32F10X_LD_VL */
frankvnk 5:b20a6d299688 134 #ifdef STM32F10X_MD
frankvnk 5:b20a6d299688 135 last_IRQ_number = USBWakeUp_IRQn,
frankvnk 5:b20a6d299688 136 #endif /* STM32F10X_MD */
frankvnk 5:b20a6d299688 137 #ifdef STM32F10X_MD_VL
frankvnk 5:b20a6d299688 138 last_IRQ_number = TIM7_IRQn,
frankvnk 5:b20a6d299688 139 #endif /* STM32F10X_MD_VL */
frankvnk 5:b20a6d299688 140 #ifdef STM32F10X_HD
frankvnk 5:b20a6d299688 141 last_IRQ_number = DMA2_Channel4_5_IRQn,
frankvnk 5:b20a6d299688 142 #endif /* STM32F10X_HD */
frankvnk 5:b20a6d299688 143 #ifdef STM32F10X_HD_VL
frankvnk 5:b20a6d299688 144 last_IRQ_number = DMA2_Channel5_IRQn,
frankvnk 5:b20a6d299688 145 #endif /* STM32F10X_HD_VL */
frankvnk 5:b20a6d299688 146 #ifdef STM32F10X_XL
frankvnk 5:b20a6d299688 147 last_IRQ_number = DMA2_Channel4_5_IRQn,
frankvnk 5:b20a6d299688 148 #endif /* STM32F10X_XL */
frankvnk 5:b20a6d299688 149 #ifdef STM32F10X_CL
frankvnk 5:b20a6d299688 150 last_IRQ_number = OTG_FS_IRQn,
frankvnk 5:b20a6d299688 151 #endif /* STM32F10X_CL */
frankvnk 5:b20a6d299688 152
frankvnk 5:b20a6d299688 153 // --------- TARGET_STM32F0
frankvnk 5:b20a6d299688 154 #elif defined TARGET_DISCO_F051R8
frankvnk 5:b20a6d299688 155 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 156 last_IRQ_number = CEC_CAN_IRQn,
frankvnk 5:b20a6d299688 157 #elif defined TARGET_NUCLEO_F030R8
frankvnk 5:b20a6d299688 158 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 159 last_IRQ_number = USART2_IRQn,
frankvnk 5:b20a6d299688 160 #elif defined TARGET_NUCLEO_F070RB
frankvnk 5:b20a6d299688 161 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 162 last_IRQ_number = USB_IRQn,
frankvnk 5:b20a6d299688 163 #elif defined TARGET_NUCLEO_F072RB
frankvnk 5:b20a6d299688 164 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 165 last_IRQ_number = USB_IRQn,
frankvnk 5:b20a6d299688 166 #elif defined TARGET_NUCLEO_F091RC
frankvnk 5:b20a6d299688 167 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 168 last_IRQ_number = CEC_CAN_IRQn,
frankvnk 5:b20a6d299688 169
frankvnk 5:b20a6d299688 170 // --------- TARGET_STM32F3
frankvnk 5:b20a6d299688 171 #elif defined TARGET_DISCO_F303VC
frankvnk 5:b20a6d299688 172 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 173 last_IRQ_number = FPU_IRQn,
frankvnk 5:b20a6d299688 174 #elif defined TARGET_DISCO_F334C8
frankvnk 5:b20a6d299688 175 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 176 last_IRQ_number = FPU_IRQn,
frankvnk 5:b20a6d299688 177 #elif defined TARGET_NUCLEO_F302R8
frankvnk 5:b20a6d299688 178 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 179 last_IRQ_number = FPU_IRQn,
frankvnk 5:b20a6d299688 180 #elif defined TARGET_NUCLEO_F303RE
frankvnk 5:b20a6d299688 181 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 182 last_IRQ_number = SPI4_IRQn,
frankvnk 5:b20a6d299688 183 #elif defined TARGET_NUCLEO_F334R8
frankvnk 5:b20a6d299688 184 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 185 last_IRQ_number = FPU_IRQn,
frankvnk 5:b20a6d299688 186
frankvnk 5:b20a6d299688 187 // --------- TARGET_STM32F3XX
frankvnk 5:b20a6d299688 188 #elif defined TARGET_STM32F3XX
frankvnk 5:b20a6d299688 189 first_IRQ_number = WWDG_IRQn,
frankvnk 5:b20a6d299688 190 last_IRQ_number = FPU_IRQn,
frankvnk 5:b20a6d299688 191 #ifdef STM32F303xC
frankvnk 5:b20a6d299688 192 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 193 last_IRQ_number = FPU_IRQn,
frankvnk 5:b20a6d299688 194 #endif /* STM32F303xC */
frankvnk 5:b20a6d299688 195 #ifdef STM32F334x8
frankvnk 5:b20a6d299688 196 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 197 last_IRQ_number = FPU_IRQn,
frankvnk 5:b20a6d299688 198 #endif /* STM32F334x8 */
frankvnk 5:b20a6d299688 199 #ifdef STM32F302x8
frankvnk 5:b20a6d299688 200 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 201 last_IRQ_number = FPU_IRQn,
frankvnk 5:b20a6d299688 202 #endif /* STM32F302x8 */
frankvnk 5:b20a6d299688 203
frankvnk 5:b20a6d299688 204 // --------- TARGET_STM32F4
frankvnk 5:b20a6d299688 205 #elif defined TARGET_DISCO_F401VC
frankvnk 5:b20a6d299688 206 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 207 last_IRQ_number = SPI4_IRQn,
frankvnk 5:b20a6d299688 208 #elif defined TARGET_DISCO_F429ZI
frankvnk 5:b20a6d299688 209 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 210 last_IRQ_number = DMA2D_IRQn,
frankvnk 5:b20a6d299688 211 #elif defined TARGET_MTS_DRAGONFLY_F411RE
frankvnk 5:b20a6d299688 212 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 213 last_IRQ_number = SPI5_IRQn,
frankvnk 5:b20a6d299688 214 #elif defined TARGET_MTS_MDOT_F405RG
frankvnk 5:b20a6d299688 215 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 216 last_IRQ_number = FPU_IRQn,
frankvnk 5:b20a6d299688 217 #elif defined TARGET_MTS_MDOT_F411RE
frankvnk 5:b20a6d299688 218 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 219 last_IRQ_number = SPI5_IRQn,
frankvnk 5:b20a6d299688 220 #elif defined TARGET_NUCLEO_F401RE
frankvnk 5:b20a6d299688 221 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 222 last_IRQ_number = SPI4_IRQn,
frankvnk 5:b20a6d299688 223 #elif defined TARGET_NUCLEO_F411RE
frankvnk 5:b20a6d299688 224 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 225 last_IRQ_number = SPI5_IRQn,
frankvnk 5:b20a6d299688 226 #elif defined TARGET_STM32F407VG
frankvnk 5:b20a6d299688 227 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 228 last_IRQ_number = FPU_IRQn,
frankvnk 5:b20a6d299688 229
frankvnk 5:b20a6d299688 230 // --------- TARGET_STM32F4XX
frankvnk 5:b20a6d299688 231 #elif defined TARGET_STM32F4XX
frankvnk 5:b20a6d299688 232 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 233 last_IRQ_number = HASH_RNG_IRQn,
frankvnk 5:b20a6d299688 234 #ifdef STM32F40XX
frankvnk 5:b20a6d299688 235 last_IRQ_number = FPU_IRQn,
frankvnk 5:b20a6d299688 236 #endif /* STM32F40XX */
frankvnk 5:b20a6d299688 237 #ifdef STM32F427X
frankvnk 5:b20a6d299688 238 last_IRQ_number = SPI6_IRQn,
frankvnk 5:b20a6d299688 239 #endif /* STM32F427X */
frankvnk 5:b20a6d299688 240
frankvnk 5:b20a6d299688 241 // --------- TARGET_STM32L0
frankvnk 5:b20a6d299688 242 #elif defined TARGET_DISCO_L053C8
frankvnk 5:b20a6d299688 243 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 244 last_IRQ_number = USB_IRQn,
frankvnk 5:b20a6d299688 245 #elif defined TARGET_NUCLEO_L053R8
frankvnk 5:b20a6d299688 246 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 247 last_IRQ_number = USB_IRQn,
frankvnk 5:b20a6d299688 248
frankvnk 5:b20a6d299688 249 // --------- TARGET_STM32L1
frankvnk 5:b20a6d299688 250 #elif defined TARGET_NUCLEO_L152RE
frankvnk 5:b20a6d299688 251 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 5:b20a6d299688 252 last_IRQ_number = COMP_ACQ_IRQn,
frankvnk 6:c19fcbd73dbc 253
frankvnk 6:c19fcbd73dbc 254 // --------- TARGET_STM32F7
frankvnk 6:c19fcbd73dbc 255 #elif defined TARGET_DISCO_F746NG
frankvnk 6:c19fcbd73dbc 256 first_IRQ_number = SysTick_IRQn, // WWDG_IRQn
frankvnk 6:c19fcbd73dbc 257 last_IRQ_number = SPDIF_RX_IRQn,
frankvnk 0:d3f63dfa84b7 258 #endif
frankvnk 0:d3f63dfa84b7 259 };
frankvnk 0:d3f63dfa84b7 260
frankvnk 0:d3f63dfa84b7 261 void NVIC_set_all_irq_priorities(int priority);
frankvnk 0:d3f63dfa84b7 262
frankvnk 0:d3f63dfa84b7 263 #endif // SET_ALL_PRIO