stm32外部中断问题(每次stm32进行系统复位按键控制NRST=0,程序立马进入中断服务函数)

在STM32系统中,配置了一个RF射频数据接收中断,中断口在下降沿触发。然而,每当进行系统复位,程序会立即进入中断服务函数,即使接收模块未接收到数据。中断初始化代码包括设置GPIO为上拉输入模式,配置EXTI和NVIC,并在中断服务函数中更新标志变量。主程序中LED未按预期闪烁,可能是被中断打断。问题可能出在中断配置或复位后的状态处理上。
摘要由CSDN通过智能技术生成

rf射频数据收发芯片的一个数据接收指示引脚连接stm32的一个gpio口,设置为中断口。当rf接收到数据的时候,数据接收指示引脚由高电平变为低电平,所以中断配置里面配置的是IPU,下降沿触发。系统复位后,发送模块没有发送数据,也就是说这个接收模块没有接收到数据,这个中断口根本不会触发立马。可是实际上是一旦复位,在线调试发现k=100,说明进入中断服务函数,不得其解,大佬帮忙看看是不是配置错误呢。中断代码如下:

#include "wakeup_interrupt.h"


extern uint8_t Signalll;
uint8_t g_RF24L01RxBuffer[ 32 ] = { 0 }; 
uint32_t t=0,i = 0,n=0,k=0;
const char *g_changeok = "changeok";
const char *g_wakingup = "wakingup";




void wakeup_interrupt_Configuration(void)
{
    GPIO_InitTypeDef    GPIO_InitStructure;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;  
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;
    GPIO_Init(GPIOA, &GPIO_InitStructure);


    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO,ENABLE);
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值