㈠ plc 延时消抖的问题
PLC自带"消抖",这点我们在做程序时无需考虑.
"当按下X1时,此时Y1由于电气互锁处于断路状态,Y0无法得电" ------------ Y1正是出于断路状态才能让Y0得电.
不理解的话建议实际动手操练下...单片机上延时消抖满足简单应用可以
㈡ 单片机消抖延时程序
晕~~ 就是单片机做延时 按键抖动MS级的 让单片机延时跳过那个时间就行了
㈢ 为什么在中断里面加个延时会变的很慢很慢
中断里最好不要加延时,中断里的程序运行时间越短越好。
㈣ 独立键盘,添加了延时消抖函数就用不了了,不管延时时长多少,但是撤去延时就可以了,但是数字变化好快。
你是用的ccs吧!还有就是定义的想,x,y,z用int不要用uint,
㈤ 单片机用延时消抖,延时后为什么要再一次判断
延时的目的,就是延时后再判断一次,否则延时有什么用?你以为延时是为了玩吗?
延时过后,按键的抖动以过去,处于平稳接触状态,这次再判断,才是可靠的。
而延时前的第一次判断,可能是处于抖动状态,这样的判断就不准确了。
㈥ 单片机外中断消抖的问题 我的方法为什么不行
不建议用外部中断来检测按键。
外部中断是用来检测要求响应速度高(微秒级)的外设的,而按键的动作时间都大于40毫秒,你可以测试一下。
虽然还是有很多做开发板的把按键做在中断上,但那只是验证是否好用,产品上尽量不要这样做。
按键消抖也不要用延时10ms再检测一次的办法,延时的这10ms实在是浪费控制器的资源,要知道时间对微控制器来说是非常宝贵的。
在做按键检测时,建议设置一个10ms的定时器中断作为时钟节拍,并在中断中设置标志。
程序的主循环中检测时钟节拍标志,检测到标志后清除标志并扫描按键,记录当前按键状态并和上次检测的结果做比较,并记录相同的次数,连续三次检测到同一个按键按下,则确认按键按下。
这样既可以消抖保证按键的准确,又较少的占用了微控制器的时间资源,稍微增加了点程序的空间,在单片机做的人机界面的系统中,应该是最合算的。
下面两个问题,你可以参考一下。
http://..com/question/518522337?&oldq=1
http://..com/question/520571012?&oldq=1
㈦ 软件消抖一般时间是多久
一般的单片机开发板,用的按键是普通的按键开关。其结构为弹簧铁片,按下时...为了不产生这种现象而作的措施就是按键消抖。 抖动时间的长短由按键的机械...
㈧ 单片机中什么是抖动如何消除抖动
单片机中抖动是按键所用的开关都是机械弹性开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上就稳定的接通,在断开时也不会一下子彻底断开,而是在闭合和断开的瞬间伴随了一连串的抖动。利用电容的充放电特性来对抖动过程中产生的电压毛刺进行平滑处理,从而实现消抖。
按键稳定闭合时间长短是由操作人员决定的,通常都会在100ms以上,刻意快速按的话能达到40-50ms左右,很难再低了。
抖动时间是由按键的机械特性决定的,一般都会在10ms以内,为了确保程序对按键的一次闭合或者一次断开只响应一次,必须进行按键的消抖处理。
当检测到按键状态变化时,不是立即去响应动作,而是先等待闭合或断开稳定后再进行处理。按键消抖可分为硬件消抖和软件消抖。
(8)软件消抖延时过长会怎样扩展阅读
单片机在电子技术中的开发,主要包括CPU开发、程序开发、 存储器开发、计算机开发及C语言程序开发,同时得到开发能够保证单片机在十分复杂的计算机与控制环境中可以正常有序的进行,这就需要相关人员采取一定的措施:
(1)CPU开发。开发单片机中的CPU总线宽度,能够有效完善单片机信息处理功能缓慢的问题,提高信息处理效率与速度,开发改进中央处理器的实际结构,能够做到同时运行2-3个CPU,从而大大提高单片机的整体性能。
(2)程序开发。嵌入式系统的合理应用得到了大力推广,对程序进行开发时要求能够自动执行各种指令,这样可以快速准确地采集外部数据,提高单片机的应用效率。
(3)存储器开发。单片机的发展应着眼于内存,加强对基于传统内存读写功能的新内存的探索,使其既能实现静态读写又能实现动态读写,从而显着提高存储性能。
(4)计算机开发。进一步优化和开发单机片应激即分析,并应用计算机系统,通过连接通信数据,实现数据传递。
㈨ 单片机的软件消抖什么意思
你这是用于按键消抖的代码。
通常的按键所用开关为机械弹性开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动,为了不产生这种现象而作的措施就是按键消抖。
抖动时间的长短由按键的机械特性决定,一般为5ms~10ms。这是一个很重要的时间参数,在很多场合都要用到。
按键稳定闭合时间的长短则是由操作人员的按键动作决定的,一般为零点几秒至数秒。键抖动会引起一次按键被误读多次。为确保CPU对键的一次闭合仅作一次处理,必须去除键抖动。在键闭合稳定时读取键的状态,并且必须判别到键释放稳定后再作处理。
按键按下至松开的波形如下图所示:
如果按键较多,常用软件方法去抖,即检测出键闭合后执行一个延时程序,5ms~10ms的延时,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有键按下。当检测到按键释放后,也要给5ms~10ms的延时,待后沿抖动消失后才能转入该键的处理程序。
㈩ keil按键去抖问题,用了消抖延时,还是按一下显示很多,是什么问题呢
现在的情况是,没有按键一样执行下面的switch操作,
把这个switch(){......}放在 keytemp=scan1 | scan2; 后面一行即可。