• 信号去抖操作


    来源:https://blog.csdn.net/renhaofan/article/details/78848547

    总结一下,消抖两大类方法: 
    这里写图片描述 
    软件消抖:主要采取当按键按下,延时一会,越过信号不稳定的抖动时间,再次判断键盘是不是按下; 
    If ( !key) 

    Delay(xxxms/us); 
    if(!key) 
    true key; 
    else 
    shake key; 

    硬件消抖:主要是对抖动时,连续的进行判断,判断是否有“gap”,就是“间隙”; 
    但是这样有一个问题,就是可能延时判断时,抖动,正好满足,你的验证方法,比如说,刚才以下方法判断3位的,有可能抖动恰好满足; 
    所以硬件更好的方法,应该是用一个计数器,对松键和按键的抖动脉冲计数,然后分析按键的习惯,设定一个阈值,通过这个阈值就可以判断出是否是真的抖动。 
    方法一:RS触发器 
    这里写图片描述

    这是用multisim做的一个,原理是,R,S端都用电阻上拉,开关打到A端,相当与输入时低电平,打向B的时候,产生一个低电平抖动,因为是与非门的RS触发器,R,S全是1的时候,输出保持不变,所以Q立马就变成1,之后就保持不变了。B到A,同样的道理,遇到第一个抖动,R的输入就立马变成0,所以Q也就为0; 
    方法二:D触发器 
    需要几位消抖,就用几个D触发器,以4位为例子: 
    这里写图片描述
    实际上就是“滤波”的效果,抖动,肯定有低电平,高电平,分布不均匀,这样设计相当于,在某段时间内,没有所谓的gap才可以。 
    方法三:用状态转换图设计(本实验采用的方法) 
    这里写图片描述
    实际上就是极短时间内判断了三个是不是同时是高电平

  • 相关阅读:
    SQL 去重 DISTINCT 语法
    urllib2 urllib urllib3的区别联系
    urllib库中常见的类和方法
    python模块之json pickle
    python os模块
    python的常见内置模块之-----time
    列表,队列,栈,链表的内存模型
    open函数
    session和cookie
    随笔小skill
  • 原文地址:https://www.cnblogs.com/zzdbullet/p/9339835.html
Copyright © 2020-2023  润新知