编程实现如下功能:识别按键的单击和双击。能过串行口从上位机发一个间隔时间数据到单片机,来设定双击按键的速度。比如时间数据为500,那么可以认为500ms是双击的间隔标准,两次按键间隔时间少于500ms就认为是双击,多于此时间就认为是两次单击。上位机发过来的数据同时要在单片机的液晶上显示。如果双击某一按键(选板上任一个为例即可),就在让8个LED中的其中4个点亮,如果单击就让另外4个点亮
kqian0327:
你好,
按键识别你可以采用捕获的方式来看两次按键的间隔时间。
点灯的话直接采用GPIO就可以实现。
注意一个问题,MCU的驱动电流最大只有48ma,8个灯同时亮的时候,注意驱动电流不要太大就好。
xueyue zhang:
回复 kqian0327:
你好,请问按键的单双击要怎么识别??
kqian0327:
回复 xueyue zhang:
你好,
实现的原理比较简单。
按键识别一般需要软件滤波,防止按键抖动。
这里你需要的做的是判断单位时间内按键次数,当然,也算上两次消除按键滤波的时间。