[MCU] 用AD做过零采样如何实现软件防抖??

[复制链接]
 楼主| zyf部长 发表于 2020-12-10 23:21 | 显示全部楼层 |阅读模式
用AD采样经过调理电路的抬升的正弦值 0.2-2.8V之间变换 50HZ
想用AD检测出过零信号 但不可避免的在过零点附近电压多少会有抖动 可能会输出多个过零信号造成错误
之前我自己的想法是用滞回特性防抖 比如2048是过零时AD结果寄存器的值 我就大于2070输出1
小于2025输出0 但是这样防抖效果不理想,还需要加大滞回值 这样会造成比较大的相位差
所以求一种软件实现的过零防抖算法 我50US才一次
xxrs 发表于 2020-12-10 23:24 | 显示全部楼层
建议你将中间值去一个区间    不要取一个固定的值
huwr 发表于 2020-12-10 23:30 | 显示全部楼层
然后去比较    或者现将接收到的数据通过算法处理一下  然后在比较
 楼主| zyf部长 发表于 2020-12-10 23:33 | 显示全部楼层
试了 但是不行
chuxh 发表于 2020-12-10 23:37 | 显示全部楼层
你可以在软件上加一个TON
houcs 发表于 2020-12-10 23:40 | 显示全部楼层
或者TOFF模块就能解决这种问题
xxmmi 发表于 2020-12-10 23:44 | 显示全部楼层
详解一下啊
wangzsa 发表于 2020-12-10 23:47 | 显示全部楼层
先根据采样值做一个过零比较器,过零比较器输出时0,1信号,在翻转的时候会有0,1抖动,对上升沿来说加一TOFF模块
huanghuac 发表于 2020-12-10 23:53 | 显示全部楼层
具体做法是只要有1次是1就认为是1了,中间过程中‘0’电平只要没超过TOFF设定的时间就始终认为是1
zwll 发表于 2020-12-10 23:56 | 显示全部楼层
当然这是牺牲下降的时间为代价的,因为下降沿来的时候要经过TOFF模块的延时才能认为是0
chuxh 发表于 2020-12-14 21:44 | 显示全部楼层
这个做滤波处理的也可以的吧。。。
pengf 发表于 2020-12-14 21:50 | 显示全部楼层
您好 能和你请教下后来是怎么实现的,最近也碰到这个事情
 楼主| zyf部长 发表于 2020-12-14 21:54 | 显示全部楼层

唉,还是没有什么结果,算了,多谢大家啦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

694

主题

7102

帖子

8

粉丝
快速回复 在线客服 返回列表 返回顶部

694

主题

7102

帖子

8

粉丝
快速回复 在线客服 返回列表 返回顶部