首页 > 其他分享 >STM32标准库函数功能介绍————EXTI库

STM32标准库函数功能介绍————EXTI库

时间:2024-07-15 17:00:49浏览次数:20  
标签:STM32 External interrupt line define uint32 EXTI 库函数

1.void EXTI_DeInit(void);

函数解释:EXTI的反初始化函数,即恢复默认状态。

参数解释:无参数
2.void EXTI_Init(EXTI_InitTypeDef* EXTI_InitStruct);

函数解释:EXTI的初始化函数

参数解释:注意要加&号


3.void EXTI_StructInit(EXTI_InitTypeDef* EXTI_InitStruct);

函数解释:

将EXTI_InitStruct结构体中各成员按照默认值填充。只填充了结构体,还没有将参数写入到寄存器中(xxx_Init)。

例子:EXTI_StructInit  (&EXTI_InitStruct);

温馨提示:EXTI_InitStruct的默认值如下

EXTI_Line:EXTI_LineNone

EXTI_Mode:EXTI_Mode_Interrupt      

EXTI_Trigger:EXTI_Trigger_Falling

 EXTI_LineCmd:DISABLE

 

参数解释:注意加&号


4.void EXTI_GenerateSWInterrupt(uint32_t EXTI_Line);

函数解释:   产生一个软件中断。

参数解释:无

例如:EXTI_GenerateSWInterrupt(EXTI_Line1);

可以选择的参数有:#define EXTI_Line0       ((uint32_t)0x00001)  /*!< External interrupt line 0 */
#define EXTI_Line1       ((uint32_t)0x00002)  /*!< External interrupt line 1 */
#define EXTI_Line2       ((uint32_t)0x00004)  /*!< External interrupt line 2 */
#define EXTI_Line3       ((uint32_t)0x00008)  /*!< External interrupt line 3 */
#define EXTI_Line4       ((uint32_t)0x00010)  /*!< External interrupt line 4 */
#define EXTI_Line5       ((uint32_t)0x00020)  /*!< External interrupt line 5 */
#define EXTI_Line6       ((uint32_t)0x00040)  /*!< External interrupt line 6 */
#define EXTI_Line7       ((uint32_t)0x00080)  /*!< External interrupt line 7 */
#define EXTI_Line8       ((uint32_t)0x00100)  /*!< External interrupt line 8 */
#define EXTI_Line9       ((uint32_t)0x00200)  /*!< External interrupt line 9 */
#define EXTI_Line10      ((uint32_t)0x00400)  /*!< External interrupt line 10 */
#define EXTI_Line11      ((uint32_t)0x00800)  /*!< External interrupt line 11 */
#define EXTI_Line12      ((uint32_t)0x01000)  /*!< External interrupt line 12 */
#define EXTI_Line13      ((uint32_t)0x02000)  /*!< External interrupt line 13 */
#define EXTI_Line14      ((uint32_t)0x04000)  /*!< External interrupt line 14 */
#define EXTI_Line15      ((uint32_t)0x08000)  /*!< External interrupt line 15 */
#define EXTI_Line16      ((uint32_t)0x10000)  /*!< External interrupt line 16 Connected to the PVD Output */
#define EXTI_Line17      ((uint32_t)0x20000)  /*!< External interrupt line 17 Connected to the RTC Alarm event */
#define EXTI_Line18      ((uint32_t)0x40000)  /*!< External interrupt line 18 Connected to the USB Device/USB OTG FS
                                                   Wakeup from suspend event */                                    
#define EXTI_Line19      ((uint32_t)0x80000)  /*!< External interrupt line 19 Connected to the Ethernet Wakeup event */


5.FlagStatus EXTI_GetFlagStatus(uint32_t EXTI_Line);

函数解释:检查指定的外部中断线的标志是否被置位。

注释:该函数没有检查EXTI_IMR和EXTI_EMR状态,它只是纯粹读取中断标志位的状态,但是不一定会响应中断

          中断发生有两个条件,一是中断标志位置位,二是中断允许。

参数解释:无


6.void EXTI_ClearFlag(uint32_t EXTI_Line);

函数解释:清除EXTI线路的挂起标志位。

例如:EXTI_ClearFlag(EXTI_Line6);

参数解释:无


7.ITStatus EXTI_GetITStatus(uint32_t EXTI_Line);

函数解释:检查指定外部中断线的状态是否有效,检查中断状态,检查中断是否发生。

例如:ITStatus  EXTIStatus;

            EXTIStatus= EXTI_GetITStatus ( EXTI_Line6);

参数解释:无


8.void EXTI_ClearITPendingBit(uint32_t EXTI_Line);

函数解释:清除EXTI线路的挂起位。

例如:EXTI_ClearITPendingBit(EXTI_Line6);

参数解释:无

标签:STM32,External,interrupt,line,define,uint32,EXTI,库函数
From: https://blog.csdn.net/2302_81647853/article/details/140438282

相关文章

  • STM32F103控制0.96寸OLED显示
            OLED支持IIC通信,IIC通信的详细知识在(http://t.csdnimg.cn/VALuO)中可以查看,STM32通过IIC将要显示的数据传输到OLED屏幕上。        除了需要显示的信息需要传输外,还有显示的坐标也需要传输。那么具体的操作如下所示:1.首先配置IIC通信的时钟线与数据线......
  • 【STM32本科毕业设计】基于STM32的心电采集系统
    基于STM32的心电采集系统一.概述二.设计方案1.前端模拟放大电路2.负电源产生电路3.心电放大电路4.电压抬升电路三.单片机部分1.主控单元选取2.信号的采集与传输3.定时器配置PWM输出关键代码4.干扰来源分析5.数字陷波滤波器的设计6.数字高通滤波器的设计7.......
  • STM32H750XBH6使用LTDC点亮7英寸LCD(1024*600)
    起因最近画的板子回来了,正好试验一下画的LCD接口是否有问题,买的正点原子的7寸lcd屏幕,使用Cubemx去配置LTDC点亮lcd。工程配置首先打开Cubemx,选好芯片型号(我用的是STM32H750XBH6),配置高速外部时钟;时钟树配置主频为400MHz(时钟速度按照自己需求来,我一般开到400M完全够用);打开......
  • 我的STM32学习路径
    重复的操作就不写了graphLRA(STM32学习进度)-->B(第一步)-->STM32F407模板A-->C(第二步)-->GPIO-->寄存器开发寄存器开发-->看寄存器手册-->寄存器数据填充含义看寄存器手册-->物理地址+偏移地址看寄存器手册-->时钟树GPIO-->库函数开发-->看官方文档......
  • STM32串口通信概念介绍2
    STM32串口通信(1) 硬件接线说明采用4针的串口(TXD、RXD、GND、VCC),然后通过CH340芯片进行转换,就可以直接通过USB口转串口的方式达到和计算机通信的目的。如果采用有线方式与PC机进行通信,则需要用到CH340转换芯片,数据会通过USART1串口传输。(1) 串口通信参数串口通信属于全双......
  • 针对特种stm32F4板子的串口接线
    硬件接线说明直接采用4针的串口(TXD、RXD、GND、VCC),然后通过CH340芯片进行转换,就可以直接通过USB口转串口的方式达到和计算机通信的目的。如果采用有线方式与PC机进行通信,则需要用到CH340转换芯片,数据会通过USART1串口传输。如果采用无线方式与手机进行通信,则不需要用到CH......
  • Linux hwspinlock子系统(STM32MP157 HSEM)
    hwspinlock(硬件自旋锁)是Linux内核中的一个同步机制,它提供了一种在多核处理器系统中保护共享资源的方法。hwspinlock分为三部分:hwspinlockcore提供注册注销以及对hwspinlock获取和释放接口。hwspinlockController驱动。hwspinlockClient驱动,使用hwspinlock提供的同步机制......
  • STM32F407外设ADC配置流程及代码示例
    STM32F407外设ADC配置流程及代码示例STM32的ADC(模拟-数字转换器)是STM32微控制器系列中集成的一个关键外设,用于将模拟信号(如温度、压力、光强等传感器输出的电压或电流信号)转换为数字信号,以便微控制器能够处理和分析这些信号。ADC配置流程:时钟配置:启用GPIOF和ADC的时钟。这是......
  • stm32-时序图学习-温度传感器-DHT11
    目录温度传感器-DHT111.单总线协议:只有一条数据线,数据只能以比特流的方式传输,所以就会涉及到MSB(高位先出)还是LSB(低位先出),传输方向是半双工通信2.时序图主从机应答信号时序图第一步主机发送启动信号第二步从机发送响应信号DHT11发送的数据0的形式DHT11发送的数据1的形式......
  • 【免费】stm32单片机、PCB资料合集,上千种项目案例+源码+说明文档,各种毕业设计论文项目
    stm32单片机、PCB资料合集,上千种项目案例+源码+说明文档,各种毕业设计论文项目参考资料等等。。获取方式:https://pan.quark.cn/s/9ceaffb46008包含但不限于:stm32项目开发资料合集stm32项目开发资料合集单片机资料毕设论文等基于单片机的七彩炫光心形灯设计基于单片机的数字......