你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

Stm32f103 hal库如果设置多个外部中断,只要用螺丝刀碰触其中一个中断线,所有的中断函数都有可能进入,乱跳。同一个线路板用标准库就没问题。正点原子的开发版及HAL库例程也这样。STM32H562开发板及HAL库例程也这样。谁能答复一下

[复制链接]
电子仪器 提问时间:2025-1-7 16:25 / 未解决

Stm32f103 hal库如果设置多个外部中断,只要用螺丝刀碰触其中一个中断线,所有的中断函数都有可能进入,乱跳。同一个线路板用标准库就没问题。正点原子的开发版及HAL库例程也这样。STM32H562开发板及HAL库例程也这样。谁能答复一下

收藏 评论7 发布时间:2025-1-7 16:25

举报

7个回答
电子仪器 回答时间:3 天前
Stm32f103 hal库如果设置多个外部中断,只要用螺丝刀碰触其中一个中断线,所有的中断函数都有可能进入,乱跳。同一个线路板用标准库就没问题。正点原子的开发版及HAL库例程也这样。STM32H562开发板及HAL库例程也这样。谁能答复一下
xmshao 回答时间:3 天前
你可以说得具体点,你现在所说的中断线,默认是指EXTI外部中断吧。


然后,你说 所有的中断函数都有可能进入,乱跳。所有的中断函数包括UART timer 等外设的吗?


其实,可以肯定,不管你使用哪个库,如果 软硬件没问题的话,触发什么中断肯定只能进入某个中断,岂能乱跳乱跑。


如果真是这样,只能耐心从自己软硬件方面找找原因。毕竟HAL库,也不只是一人两人在用一两天的工具,中断也是常用资源。

具体到你这里,注意对中断标志的及时清零、使用回调的话可能要识别中断源后做针对性的相应、软硬方面可以考虑加上适当滤波。
Glenxu 回答时间:3 天前

我遇到类似问题,有个毫不相干的PWM输出,带概率每10个没冲就触发1-3次GPIO中断,最后只能通过驱动抖动和触发后再清除一次中断来解决。

计划下一版一定给每个GPIO中断加个103,否则太离谱了。

我的干扰前提是GPIOM没有引出板子。即没有长线和电源干扰以及共模干扰问题。

落花又见流水 回答时间:前天 09:11

在中断要判断哪个引脚的中断的,是不是没判断?

废鱼 回答时间:前天 19:05

hal库一般用的回调,这个里面输入有产生中断源,需要判断中断源进行处理。

电子仪器 回答时间:5 小时前

xmshao 发表于 2025-1-7 17:57
你可以说得具体点,你现在所说的中断线,默认是指EXTI外部中断吧。</p>
<p>

对是用的EXTI, 所有的中断是指 已开通配置的exti, 不包括串口中断 代码用的是正点原子的标准例程,开发板也是正点原子的开发板,使用HAL库配置3个外部中断,用螺丝刀碰触其中一个中断输入线(注意是一个中断线)其他的中断输出也不定时的出现输出现象(LED闪烁),同一个开发板用标准库就没有这个现象

xmshao 回答时间:3 小时前

电子仪器 发表于 2025-1-10 08:13
对是用的EXTI,  所有的中断是指 已开通配置的exti,     不包括串口中断  代码用的是正点原子的标准例 ...

[md]会不会是你调用的回调函数里没有做中断源判断,不论哪里产生EXTI都响应了?

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版