打印
[STM32F1]

STM32F103RBT6飞线悬空触发输入捕获中断

[复制链接]
483|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
小库里|  楼主 | 2025-3-6 09:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用STM32F103RBT6想要实现定时器1d输入捕获功能代码如下
/*/*/*/*/*/*/*/*/*/*/*/*/*/*/     
TIM_ICInitTypeDef  TIM_ICInitStructure;     
TIM_ICInitStructure.TIM_Channel = TIM_Channel_1;     
TIM_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_Falling;     
TIM_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTI;     
IM_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;     
TIM_ICInitStructure.TIM_ICFilter = 0xf;     
TIM_ICInit(TIM1, &TIM_ICInitStructure);     
/* Enable the CC1 Interrupt Request */     
TIM_ITConfig(TIM1, TIM_IT_CC1, ENABLE);     
/* TIM1 enable counter */     
TIM_Cmd(TIM1, ENABLE);
/*/*/*/*/*/*/*/*/*/*/*/*/*/*/
中断配置如下
/*/*/*/*/*/*/*/*/*/*/*/*/*/*/     
NVIC_InitTypeDef NVIC_InitStructure;   
/* Enable the TIM1 global Interrupt */     
NVIC_InitStructure.NVIC_IRQChannel = TIM1_CC_IRQn;     
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;     
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;     
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;     
NVIC_Init(&NVIC_InitStructure);
/*/*/*/*/*/*/*/*/*/*/*/*/*/*/


存在的问题是每次我将PA.8(该引脚内部连接到TIM1-CH1)与一根飞线连接时,飞线悬空啥都不接,
都会触发TIM1 捕获中断处理程序。为什么会出现这中情况?



使用特权

评论回复
沙发
iwjj1985| | 2025-3-7 16:12 | 只看该作者
需要将捕获接口设置下拉或上拉,悬空什么都有可能

使用特权

评论回复
板凳
公羊子丹| | 2025-3-12 08:14 | 只看该作者
PA8悬空时很容易受到电磁干扰,电平不稳定,导致误触发中断。可以试试在PA8上加一个上拉电阻稳定电平。

使用特权

评论回复
地板
周半梅| | 2025-3-12 08:15 | 只看该作者
输入引脚悬空时可能会形成“天线效应”,接收到周围的电磁噪声,尤其是在工业环境或靠近电机、电源模块时更明显。

使用特权

评论回复
5
帛灿灿| | 2025-3-12 08:17 | 只看该作者
STM32的GPIO默认是浮空输入模式,如果没配置成上拉/下拉,悬空状态下电平很容易抖动。建议将PA8配置成上拉输入。

使用特权

评论回复
6
童雨竹| | 2025-3-12 08:18 | 只看该作者
如果你的输入信号幅度较低,建议调整TIM_ICInitStructure.TIM_ICFilter的值,增大滤波窗口,减少误触发。

使用特权

评论回复
7
万图| | 2025-3-12 08:19 | 只看该作者
你检查过TIM_ICPolarity的配置吗?如果信号线浮动且极性设为下降沿触发,可能更容易产生误中断。

使用特权

评论回复
8
Wordsworth| | 2025-3-12 08:20 | 只看该作者
试试在PA8引脚上并联一个小电容(如10nF~100nF),能有效滤除高频噪声,减少干扰带来的误触发。

使用特权

评论回复
9
Bblythe| | 2025-3-12 08:22 | 只看该作者
如果环境干扰严重,可以考虑使用屏蔽线来传输信号,并将屏蔽层接地,提升抗干扰能力。

使用特权

评论回复
10
Pulitzer| | 2025-3-12 08:23 | 只看该作者
除了硬件优化,软件上也可以在中断回调里加个消抖逻辑,例如检查一定时间内信号是否稳定。

使用特权

评论回复
11
Uriah| | 2025-3-12 08:24 | 只看该作者
STM32F103的输入捕获对噪声较敏感,检查PCB布局时尽量让PA8远离高频信号或电源走线。

使用特权

评论回复
12
Clyde011| | 2025-3-12 08:25 | 只看该作者
如果PA8必须悬空,建议将其默认电平拉至高电平,并在捕获时主动将信号拉低触发中断,避免干扰误触发。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

6

帖子

0

粉丝