单片机 PPT- 无阻塞键盘驱动程序设计_第1页
单片机 PPT- 无阻塞键盘驱动程序设计_第2页
单片机 PPT- 无阻塞键盘驱动程序设计_第3页
单片机 PPT- 无阻塞键盘驱动程序设计_第4页
单片机 PPT- 无阻塞键盘驱动程序设计_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、按键驱动程序设计按键驱动程序设计键盘是按键的集合键盘是按键的集合 键盘是十分重要的人机交流部件,是键盘是十分重要的人机交流部件,是一组按键开一组按键开关的集合关的集合。单片机一般用什么按键?单片机一般用什么按键? 按键的种类很多,单片机控制系统一般采用轻触按键的种类很多,单片机控制系统一般采用轻触开关。开关。轻触按键机械结构轻触按键机械结构+5V按键P1.04.7K+5V开关P1.04.7K按键工作原理按键工作原理l触点通断转换成电平高低按键操作时的电压波形V15V按下抖动510mS510mS5VV1t弹起抖动闭合稳定按键确认消除抖动的方法l硬件消抖l使用RS触发器,成本高,较少使用。5Vl软

2、件消抖l使用软件延时,2次确认的方法 零成本,经常使用。C51之之IF语句语句流程图流程图if语句的语法格式如下:if (表达式) 语句组; if语句执行过程:当“表达式”的结果为“真”时,执行其后的“语句组”,否则跳过该语句组,继续执行下面的语句。 表达式语句组假(0)真(非0)请问以上程序执行完后D的值是:假如C的初值是1,请问以上程序执行完后D的值是: 17软件消抖经典键盘驱动程序软件消抖经典键盘驱动程序流程图流程图经典键盘驱动经典键盘驱动开始读键值有键按下?延时10ms两次键值一致?按键松开?N返回键值YNN再读键值YY软件消抖经典键盘驱动的缺陷软件消抖经典键盘驱动的缺陷第15行语句:

3、 当有键按下时,程序又会死循环等待按键松开。第9行语句: 延时太长,影响程序的响应速度。第7行语句: 当无键按下时,程序会死循环等待按键。暂停上课,去暂停上课,去KFC拿张优惠券回来拿张优惠券回来优惠券第8行语句: 当按键按下时,表明已从学校去到KFC。第10行语句: KFC优惠券已拿到手。第14行语句: 没收优惠券,继续上课。第12行语句: 拿着优惠券回到学校。5VV1tKFC 0学学校校1学学校校1键盘接口电路键盘接口电路P1.0P1.1AT89S52KEY1KEY2+5V4.7K*2GND+5VP2.0P2.1200?*2LED1LED2任务任务1:按键松开与否有区别吗?:按键松开与否有

4、区别吗?流程图流程图功能:KEY1按下后,LED1灯点亮;KEY2按下并松开后,LED2灯点亮参考程序参考程序开始初始化KEY1按下?LED1灯亮返回KEY2按下?LED2灯亮KEY2松开?NYNNYY任任务务2:识别按键的多次动作:识别按键的多次动作流程图流程图功能:KEY1按下并松开后,LED1灯点亮;再次按下并松开KEY1后,LED1灯熄灭,如此反复;同理,KEY2用同样方式控制LED2。参考程序参考程序开始初始化KEY1按下?返回KEY2按下?LED2状态反转KEY2松开?NYNNYLED1状态反转KEY1松开?NYNY扩展扩展任务:实时控制闪烁功能任务:实时控制闪烁功能功能:KEY1按下并松开后,LED1和LED2交替闪亮;再次按下并松开KEY1后,LED1和LED2都熄灭,如此反复;KEY2为KEY1键的使能键,即只有KEY2在奇次按下并松开后KEY1健有效,偶次按下并松开后KEY1无效。所需知识:学习if.else.语法,学习位运算和逻辑运算。表达式

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论