实验九 键盘、数码管与点阵管.doc_第1页
实验九 键盘、数码管与点阵管.doc_第2页
实验九 键盘、数码管与点阵管.doc_第3页
实验九 键盘、数码管与点阵管.doc_第4页
实验九 键盘、数码管与点阵管.doc_第5页
全文预览已结束

下载本文档

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

文档简介

电子科技大学中山学院学生实验报告院别:电子信息学院 课程名称:微处理器实验 班级:12电信A班 姓名: 学号: 实验名称:九、键盘、数码管与点阵管实验 实验时间:2014年11月24日成绩: 教师签名: 批改时间:一、实验原理与目的1、掌握80C51单片机矩阵键盘的构成原理和软件编程。2、掌握80C51单片机数码管动态显示原理和编程3、掌握80C51单片机LED点阵的构成原理和软件编程。4、了解多构成软件的实现方法。图3.9.1 数码管与点阵管实验电路矩阵键盘是单片机输入设备的常用形式,占用端口资源较少。本实验采用2*8键盘形式实现。用P0口8个管脚和P3两个管脚P3.4和P3.5进行连接,通过键盘扫描可以识别对应的16个按键。8个数码管由两个4位数码管组成,数码管位的选择由P2口的P2.2,P2.1,P2.0经由3-8线译码器再经过反相器作为位选择信号,高电平有效,每位的8段信号由P0口信号提供,低电平有效。8*8LED点阵中的每一个像素的点亮由加在该LED两端信号控制,行选择信号由P2口的P2.2,P2.1,P2.0经由3-8线译码器再经过反相器形成,高电平选通,每行的8个列信号由P0口提供,低电平有效。P2.3统一控制数码管和LED点阵的使能,低电平有效。P4.4为低电平时使用LED点阵,否则使用LED数码管。2、 实验设备1、PC机一台(已安装Keil uVision、STC_ISP等软件);2、ZSC-1单片机实验箱一台。三、实验内容与分析1、在8个数码上顺序显示0-7八个数字;。 在Keil中编写源程序。参考程序如下(请将下划线部分补充完整):/在8个数码上顺序显示0-7;#include unsigned lettern10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;void delay(int n) /延时子函数int i;int j;for(i=0;i=0;j-);void display(unsigned char *dis,unsigned char n) /显示子函数unsigned char i,x;for (i=0;in;i+)P2=i;x=*dis;dis+;P0=letternx ;delay( 500 );void main(void)unsigned char dis8=0,1,2,3,4,5,6,7;while( 1 )display(dis,8); 在Keil中创建工程,加入源程序文件,设置选项,进行汇编/编译、连接、转换处理,生成HEX格式的单片机程序文件。 用串行电缆连接实验箱和PC机各自的串行通信口,并运行PC机上的STC_ISP程序,进行单片机程序下载。 观察程序运行结果,若LED数码管显示效果与要求的效果不同,或者想试验其它效果,则须修改源程序,重新进行汇编/编译、连接、转换处理,生成最新HEX文件,再按中介绍的步骤下载和运行最新程序。2、用8*8LED点阵循环显示0-9。参考程序如下(请将下划线部分补充完整):/用8*8LED点阵显示数字和字母#include sfr P4 = 0xC0; sfr P4SW = 0xBB; sbit P44=P44;unsigned char code led88n168=0x00,0x18,0x24,0x24,0x24,0x24,0x18,0x00, /00x00,0x08,0x18,0x08,0x08,0x08,0x1C,0x00, /1 0x00,0x18,0x24,0x04,0x08,0x10,0x3C,0x00, /20x00,0x3C,0x08,0x10,0x08,0x04,0x24,0x18, /30x00,0x08,0x18,0x28,0x28,0x3C,0x08,0x08, /40x00,0x3C,0x20,0x38,0x04,0x24,0x18,0x00, /5 /轮寻显示0x00,0x18,0x20,0x38,0x24,0x24,0x18,0x00, /60x00,0x3C,0x04,0x08,0x10,0x10,0x10,0x00, /70x00,0x18,0x24,0x24,0x18,0x24,0x24,0x18, /80x00,0x18,0x24,0x24,0x1C,0x04,0x24,0x18, /90x0C,0x12,0x12,0x12,0x1E,0x12,0x12,0x00, /A0x0E,0x12,0x12,0x0E,0x12,0x12,0x0E,0x00, /B0x0C,0x12,0x02,0x02,0x02,0x12,0x0C,0x00, /C0x0E,0x12,0x12,0x12,0x12,0x12,0x0E,0x00, /D0x1E,0x02,0x02,0x0E,0x02,0x02,0x1E,0x00, /E0x1E,0x02,0x02,0x0E,0x02,0x02,0x02,0x00; /F/参考程序1编写相关内容void display88(unsigned char *chs)/显示8*8LED点阵unsigned char i;P44=0; /LED点阵打开for(i=0;i8;i+)P0=chsi ;/每行值P2=i; /第几行delay( 1 );P2=0xff;P44=1; /关闭点阵,让数码管显示void main(void)unsigned char dis16=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15;char i;unsigned int j;P4SW|=0x10; /将P44设为IOwhile(1)for(i=0;i16;i+) /应该为16for(j=0;j100;j+)display88(led88ndisi);3、从矩阵键盘获得按键值,对0-9的值同时用数码管和LED点阵进行显示参考程序如下(请将下划线部分补充完整):/从矩阵键盘获得按键值,对0-9的值进行显示/数码管在第一个位置显示,同时进行LED点阵显示#include sbit P34=P34;sbit P35=P35;/参考程序1,2,编写相关内容unsigned char getkey(void) P0=0x00; if(P34=1&P35=1) return 0xFF; /KEYNULL delay(10); P0=0xfe; if(P35=0) return 0;/K0 if(P34=0) return 8; /K8 P0=0xfd; if(P35=0) return 1;/K1 if(P34=0) return 9; /K9 P0=0xfb ; if(P35=0) return 2;/K2 if(P34=0) return 10; /KEYESC P0= 0xf7 ; if(P35=0) return 3;/K3 if(P34=0) return 11; /KEYENTER; P0=0xef; if(P35=0) return 4;/K4 if(P34=0) return 0xF1; /KEYF1 P0=0xdf; if(P35=0) return 5;/K5 if(P34=0) return 0xF2; /KEYF2 P0= 0xbf ; if(P35=0) return 6;/K6 if(P34=0) return 0xF3; /KEYF3 P0=0x7f; if(P35=0) return 7;/K7 if(P34=0) return 0xF4; /KEYF4 return 0xFF; /KEYNULLvoid main(void)unsigned char ch1,ch=0;unsigned char x=0,1,2,3,4,5,6

温馨提示

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

最新文档

评论

0/150

提交评论