单片机应用实验指导书-实验2.doc_第1页
单片机应用实验指导书-实验2.doc_第2页
单片机应用实验指导书-实验2.doc_第3页
单片机应用实验指导书-实验2.doc_第4页
全文预览已结束

下载本文档

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

文档简介

2-1 实验二 指示灯循环控制基础实验 实验名称:指示灯循环控制基础实验学时安排:2 学时 实验类别:综合性 实验要求:必做 一、实验目的和任务 1、掌握80C51单片机程序的调试与下载方法。 2、掌握80C51单片机并口的特性及程序控制方法。 二、实验原理简介 80C51单片机包括P0P3共4个并口,除可作为普通I/O口使用外,P0口还可用作8位数 据总线口和低8位地址口,P2可用作高8位地址口,P3.6、P3.7可用作外部RAM或I/O接口 的读、写控制引脚,P3.0P3.5可用作串口、外部中断、计数器的功能引脚。 ZSC-1实验箱包括4个单片机,其中1#单片机(MCU1)和2#单片机(MCU2)的型号都是 STC12C5A60S2,只是封装不同。STC12C5A60S2采用80C51内核,片内资源和性能较标准 80C51单片机增强了许多。本课程的全部实验只用到MCU1,其P0口用作普通I/O口,为提高 I/O口的利用率,除驱动8个发光二极管外,P0口还连接有数码管、点阵管、字符液晶、行 列键盘等设备。 图2-1为P0口控制8个发光管的电路结构,P0口某口线输出低电平时,相应的发光管点 亮,口线输出高电平时发光管熄灭。在做发光管相关实验时,应将实验箱上 LED101LED108发光管右上侧的拨码开关JUMP2拨到ON一侧,使发光管限流电阻公共端连接 到MCU1电源正极(即Vcc端)。 470 470 Vcc L101 L102 P0.0 P0.1 39 MCU1 38 JUMP2 470 470 L103 L104 P0.2 P0.3 37 36 470 470 L105 L106 P0.4 P0.5 35 34 470 470 L107 L108 P0.6 P0.7 33 32 STC12C5A60S2 图 2-1 发光管控制电路 2-2 三、实验设备 1、PC机一台; 2、ZSC-1单片机实验箱一台。 四、实验内容和步骤 1、编写一段程序,用P0口作为控制端口,使发光管LED101LED108轮流点亮。 在Keil中编写源程序。汇编语言参考程序如下: ORG 0000H LJMPMAIN ORG 0100H MAIN:MOV A,#0FEH;准备点亮第一只发光管 NEXT:MOV P0,A ACALLDELAY ;软件延时 RLA;准备点亮下一只发光管 SJMPNEXT ; 延时子程序DELAY DELAY:MOV R2,#5 DELAY2:MOV R3,#100 DELAY3:MOV R4,#100 DJNZR4,$ DJNZR3,DELAY3 DJNZR2,DELAY2 RET END 在Keil中创建工程,加入源程序文件,设置选项,进行汇编/编译、连接、转换处 理,生成HEX格式的单片机程序文件。 用串行电缆连接实验箱和PC机的RS232串口,运行PC机上的STC_ISP_V483.exe,进 行程序下载。具体步骤: a.在STC_ISP_V483主界面选择MCU型号为STC12C5A60S2,打开中生成的HEX格式 程序文件,选择COM1串口,设置最高波特率为38400bps; b.将实验箱电源电路中的总电源开关拨到左侧位置,使主电源接通,将MCU1电源 开关拨到下方位置,使1#单片机断电; C.点击STC_ISP_V483主界面中的下载按钮,约等待5s,待系统提示“请给MCU上电” 时再将MCU1电源开关拨到上方位置,使1#单片机通电,开始下载程序,数秒后 下载结束,写入单片机Flash存储器中的程序自动开始运行。 观察LED显示效果,若与要求的效果不同,或者想试验其它效果,就需要修改源程 序,重新进行汇编/编译、连接、转换处理,生成最新HEX文件,再按中介绍的 2-3 步骤下载和运行最新程序。 2、用C语言编写发光管控制程序,实现相同功能。 实验步骤同上,参考程序如下: #include #include #defineuintunsigned int #defineucharunsigned char voiddelay_ms(uint); uchar LedCtrl; main() LedCtrl=0xfe; while(1) P0=LedCtrl; delay_ms(1000); LedCtrl=_crol_(LedCtrl,1); /_crol_函数的功能? voiddelay_ms(uint x) /以毫秒为单位的软件延时函数 uinti,j; for (i=x; i0; i-) for (j=114; j0;j-); 3、采用数组数据(表格)法编写发光管控制程序,实现相同功能。 汇编或 C 语言源程序(自行编写): 2-4 五、注意事项和要求 1、注意程序的完整性、正确性和逻辑性,对出现的语法和逻辑错误要认真分析原因。 2、STC12C5A60S2单片机的CPU采用了优化的内部时钟电路,程序运行速度比传统 80C51单片机快了8-12倍,因此程序中控制软件延时的循环变量的取值要相应增大, 具体取值可通过多次试验后确定。 3、程序下载前,也可利用Keil进行软件模拟调试,以便于观察各寄存器、内存单元 以及P0口的变化情况。 六、作业及预习要求 1、分析各参考程序的结构和功能,对其中的主要语句进行注释。 2、自行编写步骤3的汇编或C语言程序。 3、自己设想一种由更多LED组成的

温馨提示

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

评论

0/150

提交评论