FM33L023D外部中断

FM33L023D的外部中断对应STM32系列MCU的GPIO中断,STM32系列芯片gpio中断与引脚的关系是一对一,FM33L023D芯片一个外部中断对应多个引脚,但同时只有一个引脚起作用。中断方面都有上升沿、下降沿、双边沿中断。相对于STM32系列MCU,FM33L023D没有电平触发中断。此外,FM33L023D对引脚组的说明不明确。

引脚配置

EXTI(external interrupt)功能引脚配置无外乎将引脚设置为输入模式,开启引脚复用。引脚上拉、下拉模式配置需要参考引脚外部电路,在外部上拉的情况下,不能配置为下拉。否则,相当于电源和地导通,如果引脚连接内部电阻小,相当于短路;如果连接内部电阻大,则会增加系统功耗。drivestrength则是控制引脚电流驱动能力,slewrate 则是控制引脚驱动速度,多用于开关控制。

cpp 复制代码
    FL_GPIO_InitTypeDef GPIO_InitStruct = {0};
    FL_EXTI_InitTypeDef extiInitStruct = {0};
    FL_EXTI_CommonInitTypeDef  extiCommonInitStruct = {0};

    FL_RCC_EnableEXTIOnSleep();//休眠使能外部中断采样
    
    //EXTI中断采样时钟选择
    extiCommonInitStruct.clockSource = FL_RCC_EXTI_SAMPLING_CLK_AHBCLK;
    FL_EXTI_CommonInit(&extiCommonInitStruct);

    //用到的GPIO引脚    设为输入
    GPIO_InitStruct.pin        = FL_GPIO_PIN_8;
    GPIO_InitStruct.mode       = FL_GPIO_MODE_INPUT;
    GPIO_InitStruct.outputType = FL_GPIO_OUTPUT_PUSHPULL;
    GPIO_InitStruct.pull       = FL_GPIO_PULLUP_ENABLE;
    GPIO_InitStruct.remapPin      = FL_ENABLE;
    GPIO_InitStruct.drivestrength = FL_GPIO_DRIVESTRENGTH_HIGH;
    GPIO_InitStruct.slewrate      = FL_GPIO_SLEWRATE_HIGH;
    (void)FL_GPIO_Init(GPIOA, &GPIO_InitStruct);

    //引脚滤波 如果此引脚有滤波功能,并需要滤波的话,可以开启   
    FL_GPIO_EnableIODF(GPIO, FL_GPIO_IOA_PA8);

中断配置

EXTI中断配置时需要区分引脚组、外部中断线,**每个中断线包含的引脚可以从表格中确定,中断组则是依据表格中GPIO出现的顺序确定。**EXTI00中断线可选4个引脚,0-3号中断组对应引脚分别为PA0、PA8、PB0、PB8。

中断边沿配置、引脚选择见GPIO EXTI Select x寄存器,高16位配置边沿,低16位配置引脚。以PA8引脚为例,属于EXTI0模块0号中断线,所以传参为FL_GPIO_EXTI0_LINE_1,extiInitStruct.input 选择为FL_GPIO_EXTI_INPUT_GROUP1。

cpp 复制代码
    //IO中断
    extiInitStruct.input = FL_GPIO_EXTI_INPUT_GROUP1;          //中断线上对应的IO
    extiInitStruct.triggerEdge = FL_GPIO_EXTI_TRIGGER_EDGE_BOTH; //设置触发边沿
    FL_EXTI_Init(FL_GPIO_EXTI0_LINE_1,&extiInitStruct);    


    /*NVIC中断配置*/
    NVIC_DisableIRQ(GPIO_IRQn);
    NVIC_SetPriority(GPIO_IRQn, 2); //中断优先级配置
    NVIC_EnableIRQ(GPIO_IRQn);
相关推荐
吠品6 小时前
智谱开源 ZCode 之后,真正的考试才开始
单片机·嵌入式硬件·1024程序员节
Chery11407 小时前
高速ADC与精密DAC怎么选?DP9230D与DP8532D应用解析
嵌入式硬件·物联网·射频工程
小李不想当小白10 小时前
SPI通信外设与W25Q64 (硬件SPI)(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式
LCG米11 小时前
STM32驱动W5500以太网模块实测:TCP吞吐瓶颈定位、TX指针回绕陷阱与断线重连保活落地
stm32·单片机·嵌入式硬件·tcp/ip
尼喃12 小时前
662K/65Z5三脚稳压芯片规格书—PW6566B33/B30引脚功能
嵌入式硬件
创界工坊工作室12 小时前
63-基于STC89C52霍尔传感器的智能化电能表设计
stm32·单片机·嵌入式硬件·51单片机·proteus
智购科技自动售货机厂家13 小时前
让AI经营自动售货机:从Project Vend看工具权限与业务规则~YH
大数据·服务器·单片机·嵌入式硬件·深度学习
Zwawa14 小时前
从 printf 到曲线:把数据送上 VOFA+
c语言·单片机·嵌入式
意法半导体STM3215 小时前
【官方原创】LAT6048 如何扩大MP2的A35核和M33核共享内存
stm32·单片机·嵌入式硬件·内存映射·stm32mp2
en.en..15 小时前
STM32(F429)启动模式与两种烧录方式
stm32·单片机·嵌入式硬件