嵌入式独立键盘检测控制实验.doc

嵌入式独立键盘检测控制实验.doc

ID:56758184

大小:2.73 MB

页数:10页

时间:2020-07-07

嵌入式独立键盘检测控制实验.doc_第1页
嵌入式独立键盘检测控制实验.doc_第2页
嵌入式独立键盘检测控制实验.doc_第3页
嵌入式独立键盘检测控制实验.doc_第4页
嵌入式独立键盘检测控制实验.doc_第5页
资源描述:

《嵌入式独立键盘检测控制实验.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、.理工大学信息工程与自动化学院学生实验报告(2013—2014学年第2学期)课程名称:嵌入式技术及应用开课实验室:信自楼5042014年5月25日年级、专业、班2011级计科111学号201110405138冠芬成绩实验项目名称独立键盘检测控制实验指导教师江虹教师评语该同学是否了解实验原理:A.了解□B.基本了解□C.不了解□该同学的实验能力:A.强□B.中等□C.差□该同学的实验是否达到要求:A.达到□B.基本达到□C.未达到□实验报告是否规:A.规□B.基本规□C.不规□实验过程是否详细记录:A.详细□B.一般□C.没有

2、□教师签名:年月日一、实验目的掌握单片机系统中独立键盘的编程控制方法,学会实时程序的调试技巧。二、实验原理键盘是单片机应用中常用的输入设备,在应用系统中,操作人员可通过键盘向系统输入指令、地址和数据,实现简单的人机通信。Word资料.键盘实际上是一组按键开关的集合,平时总是处于断开状态,当按下键时它才闭合。按键在闭合和断开时,触点会存在抖动现象,抖动时间一般为5-10ms,键盘的处理主要涉及以下3个方面的容:Ø按键的识别所接I/O口线是高还是低电平(根据连接情况)Ø抖动的消除硬件消抖软件消抖(延时)Ø判断键值实验板电路原理图

3、如下:Word资料.一、实验容利用TX-1C实验板上的数码管前三位显示一个跑表,从000到999之间以1%秒速度运行,当按下独立键盘的S2时跑表停止,松开手后跑表继续运行。(用定时器设计表)。在上面的基础上,用另外三个独立键盘(S3、S4、S5)实现按下S3时计时停止,按下S4时计时开始,按下S5时计数值清零从头开始。二、实验步骤1、按实验容要求在µVision中创建项目,编辑、调试、编译程序。2、将编译生成的目标码文件(后缀为.Hex)下载到实验板上。3、观察实验运行结果并记录。1.原理补充:在简单的单片机应用系统中,往往

4、只需要几个功能键就能满足要求,此时,可采用独立式按键结构。独立式按键是直接用I/O口线构成的单个按键电路,其特点是每个按键单独占用一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。独立式按键的典型应用如图1.2.1所示。Word资料.独立式按键示意图独立式按键电路配置灵活,软件结构简单,但每个按键必须占用一根I/O口线,因此,在按键较多时,I/O口线浪费较大,不宜采用。程序开始,检测按键是否被按下,若按下,则移动机器人启动,未被按下,继续检测。这里将程序分成三个部分,分别是延时子函数、按键子函数、主函数。延时子函数

5、,通过参数t设置延时时间;按键模块子函数需用到延时函数,对按键进行消抖;主函数主要调用按键检测程序,实现对移动机器人的控制。程序流程图如图1.2.2所示Word资料.程序流程图程序示例:在编写程序开始的部分,将系统头文件“STC89C52RC.H”包含进来,对常用的变量类型进行宏定义,规划各函数和变量,对变量进行定义和初始化,对自定义子函数进行声明并添加相应标注,程序开始部分如下sbitIN1=P1^0;sbitIN2=P1^1;Voidkey();编写主函数,在主函数中就是调用按键检测函数。Voidmain(){key()

6、;}编写key()按键检测函数,按键按下,输出低电平,通过if语句检测低电平,延时10ms后,再次检测,若检测为高电平,则表示为机械抖动,若检测到低电平表示按键按下。Voidkey(){Word资料.if(IN1==0){delay_ms(10);if(IN1==0){while(IN1==0);IN2=~IN2;}}}在上面的程序中,就只有一个检查按键扫描的函数key(),key()函数是检查有没有按键按下编写的。当有按键下的时候P2口取反。2.代码实现Word资料.#include#defineuint

7、unsignedint#defineucharunsignedcharsbitKEY1=P3^4;sbitKEY2=P3^5;sbitKEY3=P3^6;sbitKEY4=P3^7;sbitU1=P2^6;sbitU2=P2^7;ucharcount,count1,bai,shi,ge,num,count1;uintsecond;ucharcodetable[]={0x3f,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x51,0x79,0x71};

8、voiddelay(uintz){uintx,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}voidinit(){TMOD=0x11;//0001'0001TH0=(65536-10000)/256;TL0=(65536-10000)%256;EA=1;Wor

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。