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/)