基于STM32和外部中断控制的霍尔传感器频繁进中断的问题
时间:2022-12-06 03:00:00
主控用了STM32F103RBT用霍尔触发外部中断。
问题:板通电,程序会一直进入外部中断,而不触发霍尔传感器。拔下霍尔传感器后,程序不会中断。
原因分析:插入霍尔传感器会触发中断;拔出后不会触发中断,不适合直接拉下引脚触发进入中端。说明程序没问题,是霍尔传感器有问题,还是霍尔传感器外围电路有问题。
解决方案:当外部中断设置为下降沿触发(我的程序设置为下降沿触发中断)后,单片机中断将特别敏感或不稳定,这是STM32有的Bug吧。然后查找霍尔的数据手册,发现我少了一个电容,没有电容的滤波,会被影响而触发中断。添加滤波电容器后,可以过滤掉杂波,稳定信号,使单片机不会无缘无故中断。
有问题的电路
然后修改了霍尔的外部电路
这个程序不会无缘无故地中断。这是一个血腥的教训。经过几天的检查,它没有被发现。教训:遇到问题时,先检查数据手册。
.如果外部电路没有问题,可以增加中断的抖动,这也可以工作。