单片机实验6课件_第1页
单片机实验6课件_第2页
单片机实验6课件_第3页
单片机实验6课件_第4页
单片机实验6课件_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

微机原理与接口技术(单片机)实验

实验六按键接口使用

一、实验目的:

1、通过实验学会按键识别与2、熟悉XL400+单片机综合仿真试验仪的组成和使用方法。3、学会应用XLISP和keil-uvision2集成调试软件进行实验。掌握实验的步骤并能得到正确的实验结果。二、实验内容与步骤(一)内容用XL400+单片机综合仿真试验仪和Keil软件实现:

1、按键指示程序,有键按下,对应的LED灯亮,按键接p1口,8路指示灯接p0口

2、对独立键进行按键次数计数,三位数码管显示。(1)K1按下后,进行加1计数 (2)K2按下后,进行减1计数(3)K3按下后,进行加5计数(4)K4按下后,清计数单元,数码管显示0。 (二)实验步骤

第一部分:系统安装和检测1、用USB电缆线连接PC机的USB口和实验仪的USB插座,打开PC机的控制面板\系统\硬件\设备管理器观看,通常实验仪连接在COM3上。2、XL400+试验仪设置按下电源开关,确认编程/仿真按钮处于编程(弹起)状态。确认CPU卡座上的CPU芯片为AT89S52并已压下扳手安装好。3、双击桌面XLISP启动程序,选择操作/检测编程器。出现编程器检测OK!说明系统已经连接完好,可以下一步实验,否则需要检查出错的原因并改正。3、点击文件新建文件出现汇编语言输入区。输入程序,点击文件中的保存,输入:程序名.C并点击保存。(输入的程序名一般不超过6个字母数字,以字母打头)4、点击(图标)目标1前的“+”号,出现(图标)源程序组1,选中并点右键,选”文件增加到源程序组1”,选择文件类型为.C,再选输入的程序名.C,点ADD(加入),点确定。

此时点击源程序组1可以看到输入的程序名.C

5、对目标1的属性进行修改;如右图,点击工程下拉菜单中的”目标’目标1’属性”;

6、单击”目标”,输入仿真器的频率12(MHz);第三部分程序写入单片机观察运行结果1、双击桌面XLISP启动程序,选择打开框,找到需要执行的程序(HEX文件),点击;在XLISP的文件程序区可见到要执行的程序;2、点击写入框,在程序写入结束后即可观察运行的结果题1参考程序#include<reg51.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedintsbitK1=P1^0;sbitK2=P1^1;sbitK3=P1^2;sbitK4=P1^3;sbitK5=P1^4;sbitK6=P1^5;sbitK7=P1^6;sbitK8=P1^7;main(){P2=0xff; P1=0xff;while(1){ P0=0xff; if(K1==0) P0=0xfe; if(K2==0) P0=0xfd; if(K3==0) P0=0xfb; if(K4==0) P0=0xf7;

if(K5==0)P0=0xef;if(K6==0)P0=0xdf;if(K7==0)P0=0xbf;if(K8==0)P0=0x7f;}}题2参考程序#include<reg51.h>unsignedchark_scan();unsignedchark_pro();unsignedchark_new,k_old;unsignedchark,num;unsignedchark_count=0;voiddelay(unsignedcharm);voiddisp_count();sbitk1=P1^4;sbitk2=P1^5;sbitk3=P1^6;sbitk4=P1^7;unsignedcharcodeLEDData[]={0x28,0x7E,0xA2,0x62,0x74,0x61,0x21,0x7A,0x20,0x60,0xff};//0,1,2,3,4,5,6,7,8,9,关显示,数码管码表unsignedchardatadisplay[4]={0x00,0x00,0x00,0x00,};switch(k){case1:k_count++;break;case2:k_count--;break;case3:for(num=0;num<5;num++)k_count++;break;case4:k_count=0;break;default:break;} k=0x00;}}voiddisp_count(){display[3]=k_count;display[2]=display[3]/100;display[0]=display[3]%100;display[1]=display[0]/10;display[0]=display[0]%10;P0=LEDData[display[0]]; //显示个位

P2=0x7f;delay(1);P0=LEDData[display[1]]; //显示十位

P2=0xbf;delay(1);P0=LEDData[display[2]]; //显示百位

P2=0xdf;delay(1); P2=0xff; //关闭显示}unsignedchark_pro(){switch(k_new){case0x01:k=1;break; //K1按下

case0x02:k=2;break; //K2按下

case0x04:k=3;break; //K3按下

case0x08:k=4;break; //K4按下

default:break;}return(k);}unsignedchark_scan(){

温馨提示

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

评论

0/150

提交评论