邮箱:zhuimengcanyang@163.com 痴爱嵌入式技术的蜗牛
分类: 嵌入式
2015-09-22 11:16:10
可以检测按键按下的状态:短按,长按,并保存键值。2. LED
短按键值: 0x01
第一次长按键值: 0x02
后面的长按键值: 0x03
LED任务实现LED闪烁,1s时间间隔。功能实现:
1. 建立一个LED任务,实现LED每1s闪烁一次的功能;关键代码:
2. 建立一个KEY扫描的任务,每10ms轮询一次,去按键抖动功能;并且检测是否有按键按下,是短按还是长按状态,并把按键值写入到定义的队列当中;
3. 建立一个读取队列的任务,这个任务的优先级大于按键扫描任务。所以队列中最多只有一个数据,当读取完队列数据(也就是按键值),该任务进入阻塞态;KEY扫描任务得到运行,检测是否有按键按下;如果有按键按下,则写键值到队列中;一旦写入,将唤醒读队列任务,打印读取到的键值。LED任务和按键扫描任务为相同的优先级,在读取队列任务进入阻塞态的时候,两者分享时间片,轮询执行。
点击(此处)折叠或打开
点击(此处)折叠或打开
点击(此处)折叠或打开
|