21ic电子技术开发论坛

标题: 除了延时防抖动之外,有其它方法吗? [打印本页]

作者: morrisk    时间: 2021-12-8 20:39
标题: 除了延时防抖动之外,有其它方法吗?
将IO口设定为外部上升沿触发。如果外部信号本身存在毛刺,则怎样防止stm32内部多次进入中断函数?

作者: juventus9554    时间: 2021-12-8 20:42

阻容滤波

作者: supernan    时间: 2021-12-8 20:47
软件解决不好,关键是硬件处理!

作者: houcs    时间: 2021-12-8 20:48
关于外部中断的一些问题,上拉电阻,抗干扰等 曾经做过一个用光电对管测试码盘的转速的项目,里面用到外部中断。光电对管产生脉冲 基本操作是,一个全局变量,外部中断的时候加一,定时器定时一秒取这个数。 结果我发现,用手碰一下中断脚就会中断上百次。 后来我在中断脚前面加了一个反相器74ls14,同时加上一个电容,才解决问题,这里74ls14起到个延时作用,如果达不到足够74ls14输出的时间就是干扰。 尝试了多次,电容小了,抗干扰能力不行,电容大了,信号不准确。 使用外部中断的时候注意,对应引脚一定要设置为输入 DDR 设置为0,如果要使能内部上拉电阻,PORT设为1。 一点经验,欢迎讨论。

作者: jiajs    时间: 2021-12-8 20:50
摘抄的,我现在也遇到同样的问题,郁闷,正在想办法解决,你有进展了吗

作者: zhanghqi    时间: 2021-12-8 20:52

好像NXP的有软件滤波功能,ST的没有

作者: chenjunt    时间: 2021-12-8 20:54

ST的TIMER模块,在输入捕获通道,来自外部引脚的信号都有软件滤波功能。

作者: zwll    时间: 2021-12-8 20:56
如果是对外部信号的上升沿进行捕捉,产生中断,而外部信号有毛刺的情况下,可以使用上述的功能。

作者: xxmmi    时间: 2021-12-8 20:58
我曾经也是这样做的,并且也挺好的,只是偶尔也产生点误判,于是我用了两个,便很好了

作者: chuxh    时间: 2021-12-8 21:00
我就是用的这个方法,光电开关出来先经过74hc14,在经过电容滤波,效果还行,不过还是偶尔有误判,正在改变电容解决问题

作者: chuxh    时间: 2021-12-8 21:02
曾经用导线将外部中断引脚对地短路,只要导线长度大于15CM,用电烙铁在附近插板上反复插拔,都会引起中断,最后用光耦隔离且光耦必须尽可能靠近中断引脚干扰才基本消除

作者: zhaoxqi    时间: 2021-12-8 21:04
以前试过用导线直接将中断引脚对地短路,用电烙铁在附近插板上反复插拔干扰还是存在,最后用光耦隔离干扰才被消除,光耦要尽可能靠近中断引脚。

作者: zhenykun    时间: 2021-12-8 21:08
最好是硬件处理,硬件带有斯密特触发仿抖动最好了,要么就是用定时器中断,加上去除抖动时间

作者: ousj    时间: 2021-12-8 21:10
抖动本身就应该由硬件(包括机械及电子 器件去解决),反馈到软件这里,面对实际发生的各种信号,能过滤掉抖动就不错了。

作者: zwll    时间: 2021-12-8 21:12
不要寄全部希望于软件。这种想法本身就是错误

作者: pengf    时间: 2021-12-8 21:14
用电容滤波啊

作者: heweibig    时间: 2021-12-8 21:16
一般来说都是外接滤波电容的

作者: shimx    时间: 2021-12-8 21:18
那就从硬件上进行处理 就像是楼上说的 用滤波电容

作者: wyjie    时间: 2021-12-8 21:20
也可以用软件做 比较麻烦就是

作者: chuxh    时间: 2021-12-8 21:22
或者多长时间内不开启中断

作者: morrisk    时间: 2021-12-8 21:25

其实还是不大明白,我再琢磨琢磨吧,多谢了哈先

作者: tfqi    时间: 2022-1-7 19:47
可以加电容滤波

作者: kxsi    时间: 2022-1-7 19:48
软件也可以滤波防抖

作者: nawu    时间: 2022-1-7 19:49
主要你这个延时不好掐啊

作者: qcliu    时间: 2022-1-7 19:50
毛刺的幅值大不大啊

作者: wiba    时间: 2022-1-7 19:53
最好的办法就是选用合适的电容了

作者: sadicy    时间: 2022-1-8 10:09
常规处理,实现功能即可





欢迎光临 21ic电子技术开发论坛 (https://bbs.21ic.com/)