STM32中断

1.EXTI外部中断,可以检测指定的GPIO的电平信号,档期指定的GPIO口产生电平信号时EXTI将立即向NVIC发送中断申请,经过NVIC裁决后即可中断CPU主程序,像CPU执行EXTI对应的中断程序

2.支持触发的模式,上升沿和下降沿,双边沿,软件出发

3.支持的GPIO口:所有的GPIO口,但相同的PIN不能同时触发中断

4.通道数:16个GPIO_PIN,外加PVD输出,RTC闹钟,USB唤醒,以太网唤醒

5.触发相应方式:中断响应/事件响应

中断系统

1.在主程序运行过程中,出现了特定的中断触发条件(中断源),使得CPU暂时停当前正在运行的程序,转而去处理中断程序,处理完成之后再返回来被暂停的位置继续运行

2.中断优先级:当有多个中断源同时申请中断时,CPU会根据中断源的轻重缓急进行决裁,优先级响更加紧急的中断源

3.中断嵌套:当一个中断程序正在运行时,又有新的更高中断优先级的中断源申请,CPU再次暂停去处理新的中断程序,处理结束后再一次进行返回

库函数

1.复位AFIO外设

void GPIO_DeInit(GPIO_TypeDef* GPIOx);

2.锁定GPIO防止被意外更改

void GPIO_PinLockConfig(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);

3.配置AFIO的事件输出功能功能的

void GPIO_EventOutputConfig(uint8_t GPIO_PortSource, uint8_t GPIO_PinSource);
void GPIO_EventOutputCmd(FunctionalState NewState);

4.用来进行引脚重映射

void GPIO_PinRemapConfig(uint32_t GPIO_Remap, FunctionalState NewState);

5.可以配置AFIO的数据选择器,选择想要中断的引脚

void GPIO_EXTILineConfig(uint8_t GPIO_PortSource, uint8_t GPIO_PinSource);

6.以太网外设

void GPIO_ETH_MediaInterfaceConfig(uint32_t GPIO_ETH_MediaInterface);

7.清楚EXTI配置,恢复成上电默认状态

void EXTI_DeInit(void);

8.根据结构体里的参数配置EXTI外设

void EXTI_Init(EXTI_InitTypeDef* EXTI_InitStruct);

9.把参数传递的结构体变量赋一个默认值

void EXTI_StructInit(EXTI_InitTypeDef* EXTI_InitStruct);

10.  软件触发外部中断

void EXTI_GenerateSWInterrupt(uint32_t EXTI_Line);

11.中断分组

void NVIC_PriorityGroupConfig(uint32_t NVIC_PriorityGroup);

12.根据结构体里的指定参数初始化NVIC

void NVIC_Init(NVIC_InitTypeDef* NVIC_InitStruct);

13.设置中断向量表

void NVIC_SetVectorTable(uint32_t NVIC_VectTab, uint32_t Offset);

14.系统低功耗配置

void NVIC_SystemLPConfig(uint8_t LowPowerMode, FunctionalState NewState);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值