STM32中断向量表

合集下载

关于STM32中断向量表的位置 、重定向问题

关于STM32中断向量表的位置 、重定向问题

关于STM32 中断向量表的位置、重定向问题首先我们需要跳到main 函数,这个就不多说了。

那么,中断发生后,又是怎么跑到中断入口地址的呢?从stm32f10x.s 可以看到,已经定义好了一大堆的中断响应函数,这就是中断向量表,标号__Vectors,表示中断向量表入口地址,例如:AREA RESET, DATA, READONLY ; 定义只读数据段,实际上是在CODE 区(假设STM32 从FLASH 启动,则此中断向量表起始地址即为0x8000000)EXPORT __Vectors IMPORT OS_CPU_SysTickHandler IMPORT OS_CPU_PendSVHandler__Vectors DCD __initial_sp ; Top of Stack DCD Reset_Handler ; Reset Handler DCD NMI_Handler ; NMI Handler DCD HardFault_Handler ; Hard Fault Handler DCD MemManage_Handler ; MPU Fault Handler DCD BusFault_Handler ; Bus Fault Handler DCD UsageFault_Handler ; Usage Fault Handler 这个向量表的编写是有讲究的,跟硬件一一对应不能乱写的,CPU 找入口地址就靠它了,bin 文件开头就是他们的地址,参考手册RM0008 的10.1.2 节可以看到排列。

我们再结合CORTEX-M3的特性,他上电后根据boot 引脚来决定PC 位置,比如boot 设置为flash 启动,则启动后PC 跳到0x08000000。

此时CPU 会先取2 个地址,第一个是栈顶地址,第二个是复位异常地址,故有了上面的写法,这样就跳到reset_handler。

那么这个reset_handler 的实际地址是多少.?下面的一堆例如Nmi_handler 地址又是多少呢?发生中断是怎么跑到这个地址的呢?下面挨个讲解。

奋斗STM32V3版按键中断_EXTI_例程

奋斗STM32V3版按键中断_EXTI_例程
奋斗版 STM32 开发板例程详解———按键中断实验

按键中断(EXTI)例程实验
实验平台:奋斗版STM32开发板V2、V2.1、V3 实验内容:板子加电后,按动板子上K1-K3按键,可控制对应的LED1-LED3的亮 灭,该实验学习了外部中断(EXTI)程序的编制及控制流程。
4.2 硬件电路设计
在开发板上V6、V7、V8分别与MCU的PB5、PD6、PD3相连,如下图所示
淘宝店铺:
11
奋斗版 STM32 开发板例程详解———按键中断实验

键盘部分如下图所示: 例程所用到的列扫描线:PC5,PC2,PC3。 例程所用到的行扫描线(EXTI中断线):PE2。
上升沿触发选择寄存器(EXTI_RTSR) 偏移地址:08H 复位值:0000 0000h
注意: 外部唤醒线是边沿触发的,这些线上不能出现毛刺信号。 在写EXTI_RTSR 寄存器时在外部中断线上的上升沿信号不能被识别,挂起位不会被置 位。在同一中断线上,可以同时设置上升沿和下降沿触发。即任一边沿都可触发中断。
1.2 外部中断配置寄存器2(AFIO_EXTICR2)
地址偏移:0Ch 复位值:0000h
淘宝店铺:
1
奋斗版 STM32 开发板例程详解———按键中断实验

1.3 外部中断配置寄存器3(AFIO_EXTICR3)
地址偏移:10h 复位值:0000h
1.4 外部中断配置寄存器4(AFIO_EXTICR4)
地址偏移:14h 复位值:0000h
淘宝店铺:
2
奋斗版 STM32 开发板例程详解———按键中断实验

2.1 嵌套向量中断控制器(NVIC)
淘宝店铺:
7

stm32启动文件详解及SystemInit函数分析

stm32启动文件详解及SystemInit函数分析
DCD PendSV_Handler ; PendSV Handler
DCD SysTick_Handler ; SysTick Handler
; External Interrupts
DCD WWDG_IRQHandler ; Window Watchdog
DCD PVD_IRQHandler ; PVD through EXTI Line detect
DCD TAMPER_IRQHandler ; Tamper
DCD RTC_IRQHandler ; RTC
DCD FLASH_IRQHandler ; Flash
;__main函数由编译器生成,负责初始化栈、堆等,并在最后跳转到用户自定义的main()函数,来到C的世界。
Stack_Size EQU 0x00000400 ;//定义堆栈大小
AREA STACK, NOINIT, READWRITE, ALIGN=3 ;//定义一个数据段 按8字节对齐 ;AREA 伪指令用于定义一个代码段或数据段 NOINIT:指定此数据段仅仅保留了内存单元,而没有将各初始值写入内存单元,或者将各个内存单元值初始化为0
;链接器检查要求堆栈八字节对齐的任何代码是否仅由保持堆栈八字节对齐的代码直接或间接地调用。
PRESERVE8 ;//指示编译器8字节对齐
Байду номын сангаас THUMB ;//指示编译器以后的指令为THUMB指令
;中断向量表定义
; Vector Table Mapped to Address 0 at Reset
;中断函数仅仅实现了Reset_Handler,其他要么是死循环,要么仅仅定义了函数名称
;STM32被设置为从内部FLASH启动时(这也是最常见的一种情况),当STM32遇到复位信号后,

stm32标准库函数手册

stm32标准库函数手册

stm32标准库函数手册STM32标准库函数是一种由ST公司推出的一套用于STM32微控制器编程的开发工具,它能够帮助开发者快速地进行芯片的开发、调试和测试。

本文将对STM32标准库函数进行详细的介绍,并提供中文手册,帮助开发者更好地掌握这个工具。

一、STM32标准库函数概述STM32标准库函数是一套由ST公司提供的软件库,包括了一系列用于STM32微控制器的常用功能函数,例如GPIO、USART、SPI、I2C等,这些函数可以用于快速实现各种应用。

同时,ST公司也提供了一些示例代码,可以方便开发者进行学习和参考。

STM32标准库函数可以与各种不同的开发环境集成,例如Keil、IAR、STM32Cube等,方便开发者进行开发。

在使用STM32标准库函数时,可以通过库函数的方式来调用硬件资源,比如设置GPIO口的状态、使用USART进行通信、配置外部中断等。

1. 系统初始化函数:这些函数包括了芯片系统时钟的初始化、中断优先级的设置、时钟输出的配置等,必须在主函数前进行调用。

2. GPIO和外部中断函数:这些函数用于对GPIO口状态的配置和读取,以及对外部中断的控制。

3. USART函数:这些函数用于对串口进行配置和读写操作。

8. DAC函数:这些函数用于对模拟量进行输出。

以下是STM32标准库函数的中文手册,包含了常用函数的介绍和使用方法。

1. 系统初始化函数1.1. RCC配置函数函数原型:void RCC_Configuration(void)函数功能:配置STM32的时钟源和时钟分频系数。

函数说明:在函数内部,首先对PLL时钟源进行配置,然后根据系统时钟的需要选择PLL时钟的分频系数,然后对AHB、APB1、APB2的分频系数进行配置。

最后,开启相应时钟使能位。

函数功能:对STM32的中断向量表进行重定位,并设置各个中断的优先级。

函数说明:中断向量表的地址是由SCB_VTOR寄存器来控制的。

STM32片内FLASH被异常改写的问题分享

STM32片内FLASH被异常改写的问题分享

STM32 片内FLASH 被异常改写的问题分享
某STM32 客户反馈,当STM32F407V 芯片频繁的正常通断电的时候,FLASH 会被非法改写,出现各种各样的异常(整片被擦除、中断向量表被改写、写保护被清除等等)。

经过与跟客户沟通了解到:
1、他们是延续之前的项目,进行的一些软硬件简单修改。

之前的项目没有出现过类似的问题。

2、确认通断电的时间是足够,即断电后所有的VDD 都回到0;上电的时序也正常。

3、原理图参考了ST 相关开发板的参考设计。

4、测量工作电压,除了发觉上电时会有些许抖动外,其它一切正常。

尝试让他们改善上电电路,去掉这一抖动。

再次实验,仍然出现类似的问题。

STM32外设使用要点

STM32外设使用要点

STM32外设使用要点1、时钟安全系统(CSS)时钟安全系统被激活后,时钟监控器将实时监控外部高速振荡器;如果HSE时钟发生故障,外部振荡器自动被关闭,产生时钟安全中断,该中断被连接到Cortex-M3的NMI的中断;同时CSS将内部RC振荡器切换为STM32的系统时钟源(对于STM32F103,时钟失效事件还将被送到高级定时器TIM1的刹车输入端,用以实现电机保护控制)。

操作流程:1)、启动时钟安全系统CSS: RCC_ClockSecuritySystemCmd(ENABLE); (NMI中断是不可屏蔽的!)2)外部振荡器失效时,产生NMI中断,对应的中断程序:void NMIException(void){if (RCC_GetITStatus(RCC_IT_CSS) != RESET){ // HSE、PLL已被禁止(但是PLL设置未变)…… // 客户添加相应的系统保护代码处// 下面为HSE恢复后的预设置代码RCC_HSEConfig(RCC_HSE_ON); // 使能HSERCC_ITConfig(RCC_IT_HSERDY, ENABLE); // 使能HSE就绪中断RCC_ITConfig(RCC_IT_PLLRDY, ENABLE); // 使能PLL就绪中断RCC_ClearITPendingBit(RCC_IT_CSS); // 清除时钟安全系统中断的挂起位// 至此,一旦HSE时钟恢复,将发生HSERDY中断,在RCC中断处理程序里,系统时钟可以设置到以前的状态}}3)、在RCC的中断处理程序中,再对HSE和PLL进行相应的处理。

注意:一旦CSS被激活,当HSE时钟出现故障时将产生CSS中断,同时自动产生 NMI。

NMI将被不断执行,直到CSS中断挂起位被清除。

因此,在NMI的处理程序中必须通过设置时钟中断寄存器(RCC_CIR)里的CSSC位来清除CSS中断。

2、SysTick工作原理Cortex-M3的内核中包含一个SysTick时钟。

STM32 中断向量表的位置 、重定向

STM32 中断向量表的位置 、重定向

STM32 中断向量表的位置、重定向我们也知道怎么跳到main 函数了,那么,中断发生后,又是怎么跑到中断入口地址的呢?从stm32f10x.s 可以看到,已经定义好了一大堆的中断响应函数,这就是中断向量表,标号__Vectors,表示中断向量表入口地址,例如:AREA RESET, DATA, READONLY ;定义只读数据段,实际上是在CODE区(假设STM32 从FLASH 启动,则此中断向量表起始地址即为0x8000000)EXPORT __VectorsIMPORT OS_CPU_SysTickHandler IMPORTOS_CPU_PendSVHandler__Vectors DCD __initial_sp ; Top of Stack DCD Reset_Handler ; Reset Handler DCD NMI_Handler ; NMI Handler DCD HardFault_Handler ; Hard Fault Handler DCD MemManage_Handler ; MPU Fault Handler DCD BusFault_Handler ; Bus Fault Handler DCD UsageFault_Handler ; Usage Fault Handler这个向量表的编写是有讲究的,跟硬件一一对应不能乱写的,CPU 找入口地址就靠它了,bin 文件开头就是他们的地址,参考手册RM0008 的10.1.2 节可以看到排列。

我们再结合CORTEX-M3 的特性,他上电后根据boot 引脚来决定PC 位置,比如boot 设置为flash 启动,则启动后PC 跳到0x08000000。

此时CPU 会先取2 个地址,第一个是栈顶地址,第二个是复位异常地址,故有了上面的写法,这样就跳到reset_handler。

那么这个reset_handler 的实际地址是多少.?下面的一堆例如Nmi_handler 地址又是多少呢?发生中断是怎么跑到这个地址的呢?下面挨个讲解。

STM32学习记录12 中断向量表

STM32学习记录12 中断向量表

STM32 学习记录12 中断向量表从stm32f10x.s 可以看到,已经定义好了一大堆的中断响应函数,这就是中断向量表,标号__Vectors,表示中断向量表入口地址,例如:AREA RESET, DATA, READONLY ;定义只读数据段,实际上是在CODE 区(假设STM32 从FLASH 启动,则此中断向量表起始地址即为0x8000000)EXPORT__VectorsIMPORT OS_CPU_SysTickHandler IMPORTOS_CPU_PendSVHandler__Vectors DCD __initial_sp ; Top of Stack DCD Reset_Handler ; Reset Handler DCD NMI_Handler ; NMI Handler DCD HardFault_Handler ; Hard Fault Handler DCD MemManage_Handler ; MPU Fault Handler DCD BusFault_Handler ; Bus Fault Handler DCD UsageFault_Handler ; Usage Fault Handler这个向量表的编写是有讲究的,跟硬件一一对应不能乱写的,CPU 找入口地址就靠它了,bin 文件开头就是他们的地址,参考手册RM0008 的10.1.2 节可以看到排列。

我们再结合CORTEX-M3 的特性,他上电后根据boot 引脚来决定PC 位置,比如boot 设置为flash 启动,则启动后PC 跳到0x08000000。

此时CPU 会先取2 个地址,第一个是栈顶地址,第二个是复位异常地址,故有了上面的写法,这样就跳到reset_handler。

那么这个reset_handler 的实际地址是多少.?下面的一堆例如Nmi_handler 地址又是多少呢?发生中断是怎么跑到这个地址的呢?下面挨个讲解。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

/***@brief STM32F10x Interrupt Number Definition,according to the selected device*in@ref Library_configuration_section*/typedef enum IRQn{/******Cortex-M3Processor Exceptions Numbers***************************************************/ NonMaskableInt_IRQn=-14,/*!<2Non Maskable Interrupt*/ MemoryManagement_IRQn=-12,/*!<4Cortex-M3Memory Management Interrupt*/ BusFault_IRQn=-11,/*!<5Cortex-M3Bus Fault Interrupt*/ UsageFault_IRQn=-10,/*!<6Cortex-M3Usage Fault Interrupt*/ SVCall_IRQn=-5,/*!<11Cortex-M3SV Call Interrupt*/ DebugMonitor_IRQn=-4,/*!<12Cortex-M3Debug Monitor Interrupt*/ PendSV_IRQn=-2,/*!<14Cortex-M3Pend SV Interrupt*/ SysTick_IRQn=-1,/*!<15Cortex-M3System Tick Interrupt*//******STM32specific Interrupt Numbers*********************************************************/ WWDG_IRQn=0,/*!<Window WatchDog Interrupt*/ PVD_IRQn=1,/*!<PVD through EXTI Line detection Interrupt*/ TAMPER_IRQn=2,/*!<Tamper Interrupt*/ RTC_IRQn=3,/*!<RTC global Interrupt*/ FLASH_IRQn=4,/*!<FLASH global Interrupt*/ RCC_IRQn=5,/*!<RCC global Interrupt*/ EXTI0_IRQn=6,/*!<EXTI Line0Interrupt*/ EXTI1_IRQn=7,/*!<EXTI Line1Interrupt*/ EXTI2_IRQn=8,/*!<EXTI Line2Interrupt*/ EXTI3_IRQn=9,/*!<EXTI Line3Interrupt*/ EXTI4_IRQn=10,/*!<EXTI Line4Interrupt*/ DMA1_Channel1_IRQn=11,/*!<DMA1Channel1global Interrupt*/ DMA1_Channel2_IRQn=12,/*!<DMA1Channel2global Interrupt*/ DMA1_Channel3_IRQn=13,/*!<DMA1Channel3global Interrupt*/ DMA1_Channel4_IRQn=14,/*!<DMA1Channel4global Interrupt*/ DMA1_Channel5_IRQn=15,/*!<DMA1Channel5global Interrupt*/ DMA1_Channel6_IRQn=16,/*!<DMA1Channel6global Interrupt*/ DMA1_Channel7_IRQn=17,/*!<DMA1Channel7global Interrupt*/#ifdef STM32F10X_LDADC1_2_IRQn=18,/*!<ADC1and ADC2global Interrupt*/ USB_HP_CAN1_TX_IRQn=19,/*!<USB Device High Priority or CAN1TX Interrupts*/ USB_LP_CAN1_RX0_IRQn=20,/*!<USB Device Low Priority or CAN1RX0Interrupts*/ CAN1_RX1_IRQn=21,/*!<CAN1RX1Interrupt*/ CAN1_SCE_IRQn=22,/*!<CAN1SCE Interrupt*/ EXTI9_5_IRQn=23,/*!<External Line[9:5]Interrupts*/ TIM1_BRK_IRQn=24,/*!<TIM1Break Interrupt*/TIM1_TRG_COM_IRQn=26,/*!<TIM1Trigger and Commutation Interrupt*/ TIM1_CC_IRQn=27,/*!<TIM1Capture Compare Interrupt*/TIM2_IRQn=28,/*!<TIM2global Interrupt*/TIM3_IRQn=29,/*!<TIM3global Interrupt*/I2C1_EV_IRQn=31,/*!<I2C1Event Interrupt*/I2C1_ER_IRQn=32,/*!<I2C1Error Interrupt*/SPI1_IRQn=35,/*!<SPI1global Interrupt*/ USART1_IRQn=37,/*!<USART1global Interrupt*/ USART2_IRQn=38,/*!<USART2global Interrupt*/ EXTI15_10_IRQn=40,/*!<External Line[15:10]Interrupts*/ RTCAlarm_IRQn=41,/*!<RTC Alarm through EXTI Line Interrupt*/ USBWakeUp_IRQn=42/*!<USB Device WakeUp from suspend through EXTI Line Interrupt */#endif/*STM32F10X_LD*/#ifdef STM32F10X_LD_VLADC1_IRQn=18,/*!<ADC1global Interrupt*/EXTI9_5_IRQn=23,/*!<External Line[9:5]Interrupts*/TIM1_BRK_TIM15_IRQn=24,/*!<TIM1Break and TIM15Interrupts*/ TIM1_UP_TIM16_IRQn=25,/*!<TIM1Update and TIM16Interrupts*/ TIM1_TRG_COM_TIM17_IRQn=26,/*!<TIM1Trigger and Commutation and TIM17Interrupt*/ TIM1_CC_IRQn=27,/*!<TIM1Capture Compare Interrupt*/TIM2_IRQn=28,/*!<TIM2global Interrupt*/TIM3_IRQn=29,/*!<TIM3global Interrupt*/I2C1_EV_IRQn=31,/*!<I2C1Event Interrupt*/I2C1_ER_IRQn=32,/*!<I2C1Error Interrupt*/SPI1_IRQn=35,/*!<SPI1global Interrupt*/ USART1_IRQn=37,/*!<USART1global Interrupt*/ USART2_IRQn=38,/*!<USART2global Interrupt*/ EXTI15_10_IRQn=40,/*!<External Line[15:10]Interrupts*/ RTCAlarm_IRQn=41,/*!<RTC Alarm through EXTI Line Interrupt*/ CEC_IRQn=42,/*!<HDMI-CEC Interrupt*/TIM6_DAC_IRQn=54,/*!<TIM6and DAC underrun Interrupt*/TIM7_IRQn=55/*!<TIM7Interrupt*/#endif/*STM32F10X_LD_VL*/#ifdef STM32F10X_MDADC1_2_IRQn=18,/*!<ADC1and ADC2global Interrupt*/ USB_HP_CAN1_TX_IRQn=19,/*!<USB Device High Priority or CAN1TX Interrupts*/ USB_LP_CAN1_RX0_IRQn=20,/*!<USB Device Low Priority or CAN1RX0Interrupts*/ CAN1_RX1_IRQn=21,/*!<CAN1RX1Interrupt*/CAN1_SCE_IRQn=22,/*!<CAN1SCE Interrupt*/EXTI9_5_IRQn=23,/*!<External Line[9:5]Interrupts*/TIM1_UP_IRQn=25,/*!<TIM1Update Interrupt*/TIM1_TRG_COM_IRQn=26,/*!<TIM1Trigger and Commutation Interrupt*/ TIM1_CC_IRQn=27,/*!<TIM1Capture Compare Interrupt*/TIM2_IRQn=28,/*!<TIM2global Interrupt*/TIM3_IRQn=29,/*!<TIM3global Interrupt*/TIM4_IRQn=30,/*!<TIM4global Interrupt*/I2C1_EV_IRQn=31,/*!<I2C1Event Interrupt*/I2C1_ER_IRQn=32,/*!<I2C1Error Interrupt*/I2C2_EV_IRQn=33,/*!<I2C2Event Interrupt*/I2C2_ER_IRQn=34,/*!<I2C2Error Interrupt*/SPI1_IRQn=35,/*!<SPI1global Interrupt*/SPI2_IRQn=36,/*!<SPI2global Interrupt*/ USART1_IRQn=37,/*!<USART1global Interrupt*/ USART2_IRQn=38,/*!<USART2global Interrupt*/ USART3_IRQn=39,/*!<USART3global Interrupt*/ EXTI15_10_IRQn=40,/*!<External Line[15:10]Interrupts*/ RTCAlarm_IRQn=41,/*!<RTC Alarm through EXTI Line Interrupt*/ USBWakeUp_IRQn=42/*!<USB Device WakeUp from suspend through EXTI Line Interrupt */#endif/*STM32F10X_MD*/#ifdef STM32F10X_MD_VLADC1_IRQn=18,/*!<ADC1global Interrupt*/EXTI9_5_IRQn=23,/*!<External Line[9:5]Interrupts*/TIM1_BRK_TIM15_IRQn=24,/*!<TIM1Break and TIM15Interrupts*/ TIM1_UP_TIM16_IRQn=25,/*!<TIM1Update and TIM16Interrupts*/ TIM1_TRG_COM_TIM17_IRQn=26,/*!<TIM1Trigger and Commutation and TIM17Interrupt*/ TIM1_CC_IRQn=27,/*!<TIM1Capture Compare Interrupt*/TIM2_IRQn=28,/*!<TIM2global Interrupt*/TIM3_IRQn=29,/*!<TIM3global Interrupt*/TIM4_IRQn=30,/*!<TIM4global Interrupt*/I2C1_EV_IRQn=31,/*!<I2C1Event Interrupt*/I2C1_ER_IRQn=32,/*!<I2C1Error Interrupt*/I2C2_EV_IRQn=33,/*!<I2C2Event Interrupt*/I2C2_ER_IRQn=34,/*!<I2C2Error Interrupt*/SPI1_IRQn=35,/*!<SPI1global Interrupt*/SPI2_IRQn=36,/*!<SPI2global Interrupt*/ USART1_IRQn=37,/*!<USART1global Interrupt*/ USART2_IRQn=38,/*!<USART2global Interrupt*/ USART3_IRQn=39,/*!<USART3global Interrupt*/ EXTI15_10_IRQn=40,/*!<External Line[15:10]Interrupts*/ RTCAlarm_IRQn=41,/*!<RTC Alarm through EXTI Line Interrupt*/ CEC_IRQn=42,/*!<HDMI-CEC Interrupt*/TIM6_DAC_IRQn=54,/*!<TIM6and DAC underrun Interrupt*/TIM7_IRQn=55/*!<TIM7Interrupt*/#endif/*STM32F10X_MD_VL*/#ifdef STM32F10X_HDADC1_2_IRQn=18,/*!<ADC1and ADC2global Interrupt*/ USB_HP_CAN1_TX_IRQn=19,/*!<USB Device High Priority or CAN1TX Interrupts*/ USB_LP_CAN1_RX0_IRQn=20,/*!<USB Device Low Priority or CAN1RX0Interrupts*/ CAN1_RX1_IRQn=21,/*!<CAN1RX1Interrupt*/CAN1_SCE_IRQn=22,/*!<CAN1SCE Interrupt*/EXTI9_5_IRQn=23,/*!<External Line[9:5]Interrupts*/TIM1_BRK_IRQn=24,/*!<TIM1Break Interrupt*/TIM1_UP_IRQn=25,/*!<TIM1Update Interrupt*/TIM1_TRG_COM_IRQn=26,/*!<TIM1Trigger and Commutation Interrupt*/ TIM1_CC_IRQn=27,/*!<TIM1Capture Compare Interrupt*/TIM2_IRQn=28,/*!<TIM2global Interrupt*/TIM3_IRQn=29,/*!<TIM3global Interrupt*/TIM4_IRQn=30,/*!<TIM4global Interrupt*/I2C1_EV_IRQn=31,/*!<I2C1Event Interrupt*/I2C1_ER_IRQn=32,/*!<I2C1Error Interrupt*/I2C2_EV_IRQn=33,/*!<I2C2Event Interrupt*/I2C2_ER_IRQn=34,/*!<I2C2Error Interrupt*/SPI1_IRQn=35,/*!<SPI1global Interrupt*/SPI2_IRQn=36,/*!<SPI2global Interrupt*/ USART1_IRQn=37,/*!<USART1global Interrupt*/ USART2_IRQn=38,/*!<USART2global Interrupt*/ USART3_IRQn=39,/*!<USART3global Interrupt*/ EXTI15_10_IRQn=40,/*!<External Line[15:10]Interrupts*/ RTCAlarm_IRQn=41,/*!<RTC Alarm through EXTI Line Interrupt*/ USBWakeUp_IRQn=42,/*!<USB Device WakeUp from suspend through EXTI Line Interrupt */TIM8_BRK_IRQn=43,/*!<TIM8Break Interrupt*/TIM8_UP_IRQn=44,/*!<TIM8Update Interrupt*/TIM8_TRG_COM_IRQn=45,/*!<TIM8Trigger and Commutation Interrupt*/ TIM8_CC_IRQn=46,/*!<TIM8Capture Compare Interrupt*/ ADC3_IRQn=47,/*!<ADC3global Interrupt*/ FSMC_IRQn=48,/*!<FSMC global Interrupt*/ SDIO_IRQn=49,/*!<SDIO global Interrupt*/TIM5_IRQn=50,/*!<TIM5global Interrupt*/SPI3_IRQn=51,/*!<SPI3global Interrupt*/ UART4_IRQn=52,/*!<UART4global Interrupt*/ UART5_IRQn=53,/*!<UART5global Interrupt*/TIM6_IRQn=54,/*!<TIM6global Interrupt*/TIM7_IRQn=55,/*!<TIM7global Interrupt*/DMA2_Channel1_IRQn=56,/*!<DMA2Channel1global Interrupt*/ DMA2_Channel2_IRQn=57,/*!<DMA2Channel2global Interrupt*/ DMA2_Channel3_IRQn=58,/*!<DMA2Channel3global Interrupt*/ DMA2_Channel4_5_IRQn=59/*!<DMA2Channel4and Channel5global Interrupt*/ #endif/*STM32F10X_HD*/#ifdef STM32F10X_HD_VLADC1_IRQn=18,/*!<ADC1global Interrupt*/ EXTI9_5_IRQn=23,/*!<External Line[9:5]Interrupts*/ TIM1_BRK_TIM15_IRQn=24,/*!<TIM1Break and TIM15Interrupts*/ TIM1_UP_TIM16_IRQn=25,/*!<TIM1Update and TIM16Interrupts*/ TIM1_TRG_COM_TIM17_IRQn=26,/*!<TIM1Trigger and Commutation and TIM17Interrupt*/ TIM1_CC_IRQn=27,/*!<TIM1Capture Compare Interrupt*/ TIM2_IRQn=28,/*!<TIM2global Interrupt*/ TIM3_IRQn=29,/*!<TIM3global Interrupt*/ TIM4_IRQn=30,/*!<TIM4global Interrupt*/I2C1_EV_IRQn=31,/*!<I2C1Event Interrupt*/I2C1_ER_IRQn=32,/*!<I2C1Error Interrupt*/I2C2_EV_IRQn=33,/*!<I2C2Event Interrupt*/I2C2_ER_IRQn=34,/*!<I2C2Error Interrupt*/ SPI1_IRQn=35,/*!<SPI1global Interrupt*/ SPI2_IRQn=36,/*!<SPI2global Interrupt*/ USART1_IRQn=37,/*!<USART1global Interrupt*/ USART2_IRQn=38,/*!<USART2global Interrupt*/ USART3_IRQn=39,/*!<USART3global Interrupt*/ EXTI15_10_IRQn=40,/*!<External Line[15:10]Interrupts*/ RTCAlarm_IRQn=41,/*!<RTC Alarm through EXTI Line Interrupt*/ CEC_IRQn=42,/*!<HDMI-CEC Interrupt*/ TIM12_IRQn=43,/*!<TIM12global Interrupt*/ TIM13_IRQn=44,/*!<TIM13global Interrupt*/ TIM14_IRQn=45,/*!<TIM14global Interrupt*/ TIM5_IRQn=50,/*!<TIM5global Interrupt*/ SPI3_IRQn=51,/*!<SPI3global Interrupt*/ UART4_IRQn=52,/*!<UART4global Interrupt*/ UART5_IRQn=53,/*!<UART5global Interrupt*/ TIM6_DAC_IRQn=54,/*!<TIM6and DAC underrun Interrupt*/ TIM7_IRQn=55,/*!<TIM7Interrupt*/ DMA2_Channel1_IRQn=56,/*!<DMA2Channel1global Interrupt*/ DMA2_Channel2_IRQn=57,/*!<DMA2Channel2global Interrupt*/ DMA2_Channel3_IRQn=58,/*!<DMA2Channel3global Interrupt*/ DMA2_Channel4_5_IRQn=59,/*!<DMA2Channel4and Channel5global Interrupt*/ DMA2_Channel5_IRQn=60/*!<DMA2Channel5global Interrupt(DMA2Channel5ismapped at position60only if the MISC_REMAP bit inthe AFIO_MAPR2register is set)*/#endif/*STM32F10X_HD_VL*/#ifdef STM32F10X_XLADC1_2_IRQn=18,/*!<ADC1and ADC2global Interrupt*/ USB_HP_CAN1_TX_IRQn=19,/*!<USB Device High Priority or CAN1TX Interrupts*/ USB_LP_CAN1_RX0_IRQn=20,/*!<USB Device Low Priority or CAN1RX0Interrupts*/ CAN1_RX1_IRQn=21,/*!<CAN1RX1Interrupt*/CAN1_SCE_IRQn=22,/*!<CAN1SCE Interrupt*/EXTI9_5_IRQn=23,/*!<External Line[9:5]Interrupts*/TIM1_BRK_TIM9_IRQn=24,/*!<TIM1Break Interrupt and TIM9global Interrupt*/ TIM1_UP_TIM10_IRQn=25,/*!<TIM1Update Interrupt and TIM10global Interrupt*/ TIM1_TRG_COM_TIM11_IRQn=26,/*!<TIM1Trigger and Commutation Interrupt and TIM11global interrupt*/TIM1_CC_IRQn=27,/*!<TIM1Capture Compare Interrupt*/TIM2_IRQn=28,/*!<TIM2global Interrupt*/TIM3_IRQn=29,/*!<TIM3global Interrupt*/TIM4_IRQn=30,/*!<TIM4global Interrupt*/I2C1_EV_IRQn=31,/*!<I2C1Event Interrupt*/I2C1_ER_IRQn=32,/*!<I2C1Error Interrupt*/I2C2_EV_IRQn=33,/*!<I2C2Event Interrupt*/I2C2_ER_IRQn=34,/*!<I2C2Error Interrupt*/SPI1_IRQn=35,/*!<SPI1global Interrupt*/SPI2_IRQn=36,/*!<SPI2global Interrupt*/ USART1_IRQn=37,/*!<USART1global Interrupt*/ USART2_IRQn=38,/*!<USART2global Interrupt*/ USART3_IRQn=39,/*!<USART3global Interrupt*/ EXTI15_10_IRQn=40,/*!<External Line[15:10]Interrupts*/ RTCAlarm_IRQn=41,/*!<RTC Alarm through EXTI Line Interrupt*/ USBWakeUp_IRQn=42,/*!<USB Device WakeUp from suspend through EXTI Line Interrupt */TIM8_BRK_TIM12_IRQn=43,/*!<TIM8Break Interrupt and TIM12global Interrupt*/ TIM8_UP_TIM13_IRQn=44,/*!<TIM8Update Interrupt and TIM13global Interrupt*/ TIM8_TRG_COM_TIM14_IRQn=45,/*!<TIM8Trigger and Commutation Interrupt and TIM14global interrupt*/TIM8_CC_IRQn=46,/*!<TIM8Capture Compare Interrupt*/ ADC3_IRQn=47,/*!<ADC3global Interrupt*/ FSMC_IRQn=48,/*!<FSMC global Interrupt*/ SDIO_IRQn=49,/*!<SDIO global Interrupt*/TIM5_IRQn=50,/*!<TIM5global Interrupt*/SPI3_IRQn=51,/*!<SPI3global Interrupt*/ UART4_IRQn=52,/*!<UART4global Interrupt*/ UART5_IRQn=53,/*!<UART5global Interrupt*/TIM6_IRQn=54,/*!<TIM6global Interrupt*/TIM7_IRQn=55,/*!<TIM7global Interrupt*/DMA2_Channel1_IRQn=56,/*!<DMA2Channel1global Interrupt*/ DMA2_Channel2_IRQn=57,/*!<DMA2Channel2global Interrupt*/ DMA2_Channel3_IRQn=58,/*!<DMA2Channel3global Interrupt*/ DMA2_Channel4_5_IRQn=59/*!<DMA2Channel4and Channel5global Interrupt*/#endif/*STM32F10X_XL*/#ifdef STM32F10X_CLADC1_2_IRQn=18,/*!<ADC1and ADC2global Interrupt*/ CAN1_TX_IRQn=19,/*!<USB Device High Priority or CAN1TX Interrupts*/ CAN1_RX0_IRQn=20,/*!<USB Device Low Priority or CAN1RX0Interrupts*/ CAN1_RX1_IRQn=21,/*!<CAN1RX1Interrupt*/CAN1_SCE_IRQn=22,/*!<CAN1SCE Interrupt*/EXTI9_5_IRQn=23,/*!<External Line[9:5]Interrupts*/TIM1_BRK_IRQn=24,/*!<TIM1Break Interrupt*/TIM1_UP_IRQn=25,/*!<TIM1Update Interrupt*/TIM1_TRG_COM_IRQn=26,/*!<TIM1Trigger and Commutation Interrupt*/ TIM1_CC_IRQn=27,/*!<TIM1Capture Compare Interrupt*/TIM2_IRQn=28,/*!<TIM2global Interrupt*/TIM3_IRQn=29,/*!<TIM3global Interrupt*/TIM4_IRQn=30,/*!<TIM4global Interrupt*/I2C1_EV_IRQn=31,/*!<I2C1Event Interrupt*/I2C1_ER_IRQn=32,/*!<I2C1Error Interrupt*/I2C2_EV_IRQn=33,/*!<I2C2Event Interrupt*/I2C2_ER_IRQn=34,/*!<I2C2Error Interrupt*/SPI1_IRQn=35,/*!<SPI1global Interrupt*/SPI2_IRQn=36,/*!<SPI2global Interrupt*/ USART1_IRQn=37,/*!<USART1global Interrupt*/ USART2_IRQn=38,/*!<USART2global Interrupt*/ USART3_IRQn=39,/*!<USART3global Interrupt*/ EXTI15_10_IRQn=40,/*!<External Line[15:10]Interrupts*/ RTCAlarm_IRQn=41,/*!<RTC Alarm through EXTI Line Interrupt*/ OTG_FS_WKUP_IRQn=42,/*!<USB OTG FS WakeUp from suspend through EXTI Line Interrupt */TIM5_IRQn=50,/*!<TIM5global Interrupt*/SPI3_IRQn=51,/*!<SPI3global Interrupt*/ UART4_IRQn=52,/*!<UART4global Interrupt*/ UART5_IRQn=53,/*!<UART5global Interrupt*/TIM6_IRQn=54,/*!<TIM6global Interrupt*/TIM7_IRQn=55,/*!<TIM7global Interrupt*/DMA2_Channel1_IRQn=56,/*!<DMA2Channel1global Interrupt*/ DMA2_Channel2_IRQn=57,/*!<DMA2Channel2global Interrupt*/ DMA2_Channel3_IRQn=58,/*!<DMA2Channel3global Interrupt*/ DMA2_Channel4_IRQn=59,/*!<DMA2Channel4global Interrupt*/ DMA2_Channel5_IRQn=60,/*!<DMA2Channel5global Interrupt*/ETH_IRQn=61,/*!<Ethernet global Interrupt*/ ETH_WKUP_IRQn=62,/*!<Ethernet Wakeup through EXTI line Interrupt*/ CAN2_TX_IRQn=63,/*!<CAN2TX Interrupt*/ CAN2_RX0_IRQn=64,/*!<CAN2RX0Interrupt*/ CAN2_RX1_IRQn=65,/*!<CAN2RX1Interrupt*/ CAN2_SCE_IRQn=66,/*!<CAN2SCE Interrupt*/ OTG_FS_IRQn=67/*!<USB OTG FS global Interrupt*/ #endif/*STM32F10X_CL*/}IRQn_Type;。

相关文档
最新文档