单片机原理及应用实验指导书
- 格式:doc
- 大小:4.49 MB
- 文档页数:28
实验一指令系统和汇编语言程序设计实验本章实验主要包括指令系统和汇编语言程序设计两部分。
采用软件模拟调试的方法,目的在于通过这些实验可以使学生巩固所学知识,加深对MCS-51单片机内部结构、指令系统的理解,更进一步掌握汇编语言程序设计的方法和技巧。
实验操作说明Keil 软件调试方式分为:软件仿真方式和硬件调试两种。
软件仿真实验上机操作步骤:1、进入Keil,点击桌面上“Keil μVersion 3”图标,进入Keil系统窗口;2、新建工程:1)打开“工程”菜单中的新建,在弹出的对话框中,键入自己定义的工程名;2)在进一步打开的对话框中,选择CPU的类型,为Intel公司的8032AH,确定;3)存入C:\keil 文件夹中。
(机房,安装在C盘,改为C:\keil)3、打开“视图”菜单中的“工程窗口”;4、在“工程窗口”中,右击“目标1”,为工程设置参数;1)在弹出的快捷菜单中选择“为目标“目标1”设置选项”;2)在弹出的对话框中选择“项目”选项卡,设置时钟为“12Mhz”;3)选择“调试”选项卡,在单选框选择“软件仿真方式”;4)确定,即完成了“软件仿真方式”的设置。
5、新建文件1)打开“文件”菜单,选择“新建”;2)系统打开一个文本窗口,你可在窗口的编辑区输入要调试的汇编语言源程序;3)存盘,命名文件名和扩展名,文件名任起,扩展名必须是.asm,存入C:\keil 文件夹中(在大机房,安装在C盘,改为C:\keil);例如:a.asm。
6、将刚建的新文件添入当前的工程中1)在“工程窗口”中,“目标1”的+号处打开,显示“源代码组1”;2)右击“源代码组1”,在快捷菜单中选择“为“源代码组1”添加文件”,弹出一个对话框; 3)在对话框中选择“文件类型”为*.*;4) 选择文件所在路径,同时找到刚键入的a.asm文件,点击“add”按钮,然后点击“close”按钮;5) 在“工程窗口”点击“源代码组1”左侧的+号,显示添加的a.asm文件,添加成功。
单片机原理及应用实验指导书实验前准备1.建立新程序选择菜单[文件| 新建文件]功能出现一个文件名为NONAME1 的源程序窗口,在此窗口中输入以下程序ORG 0 MOV A ,#0 MOV P1,#0 LOOP:INC P1 ACALL Delay SJMP LOOP Delay:MOV R2,#3 DPL2:MOV R1,#0 DPL1:MOV R0,#0 DPL:DJNZ R0,DPL DJNZ R1,DPL1 DJNZ R2,DPL2 RETEND输出程序后的窗口如图,现在要做的是将此文件存盘。
2.保存程序选择菜单[文件| 保存文件]或[文件| 另存为]功能给出文件所要保存的位置,例如:D:\My programm 文件夹,再给出文件名MY1.ASM 。
保存文件。
文件保存后,程序窗口上文件名变成了:D:\MY PROGRAMM\MY1.ASM3.建立新的项目选择菜单[文件| 新建项目]功能,新建项目会自动分三步走:A ) 加入模块文件。
在加入模块文件的对话框中选择刚才保存的文件MY1.ASM ,按打开键。
如果是多模块项目,可以同时选择多个文件再打开。
B ) 加入包含文件。
在加入包含文件对话框中,选择所要加入的包含文件(可多选)。
如果没有包含文件,按取消键。
C ) 保存项目。
在保存项目对话框中输入项目名称。
MY1 无须加后缀。
软件会自动将后缀设成“.PRJ ”。
按保存键将项目存在与你的源程序相同的文件夹下。
项目保存好后,如果项目是打开的,可以看到项目中的“模块文件”已有一个模块“MY1.ASM ”,如果项目窗口没有打开,可以选择菜单[窗口| 项目窗口]功能来打开。
可以通过仿真器设置快捷键或双击项目窗口第一行选择仿真器和要仿真的单片机。
4.设置项目选择菜单[设置| 仿真器设置]功能或按“仿真器设置”快捷图标或双击项目窗口的第一行来打开“仿真器设置”对话框。
在“仿真器”栏中,选择仿真器类型和配置的仿真头以及所要仿真的单片机。
c ai wp @f j ut .e d u.c n单片机实验操作指导书第一篇 Keil uVision2基本操作Windows应用程序Keil uVision2是一个集成开发环境,它把项目管理、源代码编辑、程序调试等集成到一个功能强大的环境中。
存储器窗口工作窗口外围设备窗口输出窗口项目窗口下面以P1口点亮LED 灯为例,介绍基本的实验操作。
1.双击桌面上的图标,启动Keil uVision2。
2.选择或工具栏的按钮新建文件。
3.编辑源程序,并将文件保存成后缀为.asm 的文件(本例存为led.asm)。
(建议先在D 盘建一文件夹如MCS51用于存放实验文件)。
c ai w p @f j ut .e d u.c n4.建立项目。
(1)从菜单中选择新建项目。
(2)输入项目名称(一般与源程序同名),点保存。
(3)选择器件。
选择Atmel 公司的AT89S51c ai w p @f j ut .e d u.c n往下,找到AT89S51,选中后点确定。
(5)出现下列对话项时,选择“否”。
(如果用C51,则选择“是”)5.将源程序文件添加到项目中。
①鼠标左键单击“+”号展开②单击鼠标右键③单击鼠标左键④在弹出的对话窗口中选择“文件类型”和“文件名”,然后点“Add ”添加。
添加后该窗口不会关闭,点“Close ”关闭。
c ai w p @f j ut .e d u.c n项目中添加了源程序文件6.设置目标文件选项单击工具按钮“Options for Target ”,对“Target”和“Output”标签进行相关设置。
设置后点“确定”。
设置时钟频率,用于仿真调试时定时、观察程序运行时间等,如设为6.0MHzc ai w p @f j ut .e d u.c n单击,将该选项打勾,编译后才会在当前目录生成后缀为.HEX 的目标文件,用于仿真调试。
7.编译 用菜单中的命令或工具栏的按钮对项目进行编译。
目录第一章概述1第二章伟福实验系统组成和结构 32、1 伟福实验系统的硬件组成 32、2 伟福实验系统的支持软件92、3 外接单片机仿真功能9 第三章板上仿真器使用方法103、1 显示功能说明103、2 键盘功能说明103、3 脱机仿真11 第四章系统的使用14第五章参考实验程序16一、多字节算数运算程序161、多字节BCD数加法162、多字节二进制数减法173、双字节二进制数乘法194、双字节二进制数除法20二、代码转换程序231、二进制到BCD码转换232、BCD码到ASCII码转换25三、显示实验261、八段数码管显示262、键盘扫描显示30四、电子时钟36五、单片机串行口通讯实验39六、D/A、A/D转换实验431、D/A转换实验432、A/D转换实验45伟福Lab2000系列单片机仿真实验系统上机说明1第一章概述近十年来,我国经济快速稳步增长,电力建设发展十分迅速。
目前,无论是发电厂、变电站及输电线路,还是各种配电网络,广泛采用各种微机化仪器设备,如微机励磁装置、微机调速装置、微机保护装置、微机载波通信设备、微机无功补偿控制器以及相应的计算机监控系统等。
作为电力和动力专业的一门重要的计算机应用技术基础课程,“单片机原理及应用”对于学生掌握电站和电力系统自动装置的工作原理及结构十分重要。
为提高学生的计算机应用能力、科学实验技能以及动手能力,培养出高素质的专业人才,实验装置采用先进的伟福Lab2000教学实验仪,它具有功能强,使用灵活方便等特点。
通过选择不同的MPU/CPU型号,可实现MCS-51/MCS-96/8086计算机系统实验。
伟福仿真实验系统由板上仿真器、实验仪、伟福仿真软件、开关电源构成,具有双平台(DOS版本、WINDOWS版本)、双工作模式(软件模拟仿真、硬件仿真)、双(多)CPU 结构、双集成环境、强大的逻辑分析仪综合调试功能和追踪器功能,可以通过更换不同的POD,对各种不同类型的单片机进行仿真。
《单片机原理及应用》实验指导书2009.1《单片机原理及应用》实验指导书目录第一章系统安装和启动 (1)1.1 实验系统工作方式在51串口实验/仿真方式 (1)1.2 AEDK598实验系统工作在MCS51方式下开关初始状态 (1)第二章LCA51软件调试 (1)第三章MCS51系列单片机实验 (4)实验一P1口输入、输出实验 (4)实验二定时器实验 (6)实验三8279键盘显示实验 (8)实验四单片机串行口与PC机通讯实验 (10)实验五压力测量显示实验 (13)第一章系统安装和启动1.1 实验系统工作方式在51串口实验/仿真方式1、用户根据实验要求,进行MCS-51单片机实验/仿真时(8032芯片已插在D33插座上),将XC9(CPU插座)与XC1(CPU51插座)用T598A-C连接板连接起来,XC6(CPU88插座)空。
2、用实验机配套的串行通讯电缆,将9芯电缆的一端与实验机上的9芯插座相连,另一端与PC机的串行口相连。
3、打开电源,在PC机上打开LCA51软件,运行实验程序,具体操作参见《爱迪克T598_51使用说明》。
1.2 AEDK598实验系统工作在MCS51方式下开关初始状态●XB、XB1 : 短路套全插上。
●XB2,XB5 : 短路套向上插(SPEAK端),第10模块处于放音功能。
●第○4模块中:多位开关K3拨向最左(温度控制)端,做温度控制实验用。
●第○29模块中:短路套全部套向右边,由8279来控制键盘、显示。
●XC9(CPU插座)与XC1(CPU51插座)用T598A-C连接板连接起来。
第二章LCA51软件调试调试是编程的重要部分。
凋试的目的是找到程序的逻辑错误。
当程序不能按希望运行时,就需要对程序进行调试,直到找出原因为止。
为了便了用户对应用程序进行调试,本章将介绍LCA51软件调试界面和调试上主要方法和技巧。
一、调试界面LCA51是一个集成开发环境,调试和编辑、编译在同一个界面下完成。
《单片机原理与应用》 实 验 指 导蒋艳红 编桂林电子科技大学电子工程学院2007.3目 录实验一 单片机开发系统的使用方法 (1)实验二 I/O口输入、输出实验 (7)实验三 定时器/计数器实验 (9)实验四 中断实验 (12)实验五 串行通讯实验 (15)附录一 逻辑分析工具 (17)附录二 系统自动检测功能 (21)实验一 单片机开发系统的使用方法一、实验目的1.学习单片机开发系统和仿真软件的使用及程序调试方法。
2.掌握汇编程序的编写方法及常用技巧。
二、单片机实验系统简介单片机的开发与应用需要借助于开发软件及硬件仿真系统进行。
在单片机应用系统的开发过程中,为了得到满足要求的用户程序,需要有一个对程序的调试过程,这项工作依靠单片机自身是无法完成的。
因为程序在机器内连续高速地运行,难以观测程序的运行情况。
此外,还需要把调试成功后的程序固化到单片机的程序存储器中,当单片机运行起来后,对整个用户样机系统的软硬件进行实时的诊断、调试。
因此需要有相应的仿真设备才能完成。
单片机实验系统LAB6000即是具有对应用程序进行输入编辑、修改等功能的设备,软硬件仿真可以实现对源程序进行编译,及程序的执行和检测。
在对目标系统的调试过程中,可以运用单步执行,设置断点执行、状态查询等功能,以达到设计目的、完成从用户程序的编写到单片机应用系统的正确运行之前的一切准备工作即仿真功能。
系统运行时,能够产生和单片机完全相同的实时信号,以实现对用户样机系统中软、硬件的故障诊断和调试。
LAB6000实验系统由硬件及软件两部分组成。
三、调试步骤(一)建立源文件并保存 双击桌面WAVE图标,进入伟福开发环境。
1、选择菜单:文件/新建文件,进入源程序编辑窗口,在此输入源程序。
如图1-1。
图 1-1选择菜单:文件/保存文件或直接点击工具栏上小磁盘图标,指定文件所要保存的位置,例如:F:\0820101文件夹,再确定文件名:sy1.ASM ,注意后缀应为 .ASM。
《单片机原理及应用》实验教学指导书陈玮编莆田学院信息工程学院2015年9月目录实验一仿真系统搭建 (1)实验二实验系统编程应用 (7)实验三流水灯实验 (9)实验四 LED数码管显示实验 (11)实验五键盘实验 (13)实验六中断系统实验 (15)实验七 51定时器实验 (17)实验一仿真系统搭建一、实验目的了解实验设备的软硬件组成,包括keil单片机仿真软件的安装、设置与使用,单片机仿真调试软件的安装、设置与使用,单片机仿真器的功能、结构与使用,51单片机实验板的电路结构、工作原理与使用。
熟悉使用keil单片机仿真软件、仿真调试软件和实验板进行协调工作的方法。
熟悉使用至少两种单片机仿真系统建立、设置、调试工作项目的方法。
二、实验原理整个实验系统由仿真调试软件(keil单片机仿真软件、伟福仿真调试软件)、单片机仿真头(伟福仿真器)和单片机最小板(51单片机实验板)组成或使用Proteus 仿真系统进行硬件仿真。
仿真软件进行项目的管理设置,仿真器进行软件的下载与单片机的仿真(IAP),实验板搭载建立各种外围电路。
主要掌握的软件有KEIL编程软件、Proteus硬件仿真软件和其他一些差用软件及硬件构造。
整个实验系统使用时,若使用硬件仿真,第一步安装KEIL软件,第二步安装星研系列仿真调试软件,第三步将仿真器的数据口和电源口连接微机及实验板,进行仿真器驱动安装。
第四步将仿真头插入实验板插座(注意仿真头三角箭头标注引脚为第一脚),开机调试。
若使用软件仿真,第一步安装KEIL软件,第二步安装Proteus硬件仿真软件,然后用Proteus硬件仿真软件进行电路构建,最后进行程序调试。
1、Keil软件的安装设置:启动后,点击Project菜单新建项目。
新建项目后,选择仿真单片机型号,并新建或加入程序文件。
编写加入C语言程序后就可以对项目进行设置,进而使用Project菜单进行编译、连接和调试运行等操作。
图1-7 项目设置项目的设置包括Target菜单中的单片机振荡频率,debug菜单中的仿真方法。
单片机实验实验说明:实验一和二做一次实验三和四做一次实验五和六分别做一次实验一 P1口实验一一、实验目的:1.学习P1口的使用方法。
2.学习延时子程序的编写和使用。
二、实验设备:EL-MUT-II型实验箱,8051CPU板三、实验内容:1.P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
2.P1口做输入口,接八个按纽开关,以实验箱上74LS273做输出口,编写程序读取开关状态,在发光二极管上显示出来。
四、实验原理:P1口为准双向口,P1口的每一位都能独立地定义为输入位或输出位。
作为输入位时,必须向锁存器相应位写入“1”,该位才能作为输入。
8031中所有口锁存器在复位时均置为“1”,如果后来在口锁存器写过“0”,在需要时应写入一个“1”,使它成为一个输入。
可以用第二个实验做一下实验。
先按要求编好程序并调试成功后,可将P1口锁存器中置“0”,此时将P1做输入口,会有什么结果。
再来看一下延时程序的实现。
现常用的有两种方法,一是用定时器中断来实现,一是用指令循环来实现。
在系统时间允许的情况下可以采用后一种方法。
本实验系统晶振为6.144MHZ,则一个机器周期为12÷6.144us即1÷0.512us。
现要写一个延时0.1s的程序,可大致写出如下:MOV R7,#X (1)DEL1:MOV R6,#200 (2)DEL2:DJNZ R6,DEL2 (3)DJNZ R7,DEL1 (4)上面MOV、DJNZ指令均需两个机器周期,所以每执行一条指令需要1÷0.256us,现求出X值:1÷0.256+X(1÷0.256+200×1÷0.256+1÷0.256)=0.1×10⁶指令(1)指令(2)指令(3)指令(4)所需时间所需时间所需时间所需时间X=(0.1××10⁶-1÷0.256)/(1÷0.256+200×1÷0.256+1÷0.256)=127D=7FH经计算得X=127。
实验一、LED灯的闪烁控制实验一、实验目的1、学习单片机并行I/O端口的使用方法;2、学习延时子程序的编写;3、学习Keil 和Proteus软件的基本使用方法。
二、实验说明1、P1口为一组双向口,每位都可独立地定义为输入或输出线,在作输入线使用前,必须向锁存器相应位写入“1”,该位才能作为输入(即:P1=0xff)。
2、本实验中延时采用循环程序来实现, 入口参数控制延时时间长短。
3、实现发光二极管的闪烁控制。
三、实验内容及步骤1、硬件原理图2、源程序//功能:控制一个信号灯闪烁程序#include <reg51.h> //包含头文件REG51.H,定义了MCS-51单片机的特殊功能寄存器sbit P1_0=P1^0; //定义位名称void delay(unsigned char i); //延时函数声明void main() //主函数{while(1) {P1_0=0; //点亮信号灯delay(10); //调用延时函数,实际变量为10P1_0=1; //熄灭信号灯delay(10); //调用延时函数,实际变量为10}}//函数功能:实现软件延时void delay(unsigned char i) //延时函数,无符号字符型变量i为形式参数{unsigned char j,k; //定义无符号字符型变量j和kfor(k=0;k<i;k++) //双重for循环语句实现软件延时for(j=0;j<255;j++);}四、思考题1、MCS-51系列单片机的P0~P3四个I/O端口在结构上有何异同?使用时应注意的事项?实验二、模拟交通信号灯实验一、实验目的1、熟悉C语言的数据类型、常量与变量、运算符和表达式等基本概念及函数、程序设计基本结构;2、掌握C51对标准C语言的扩充功能;3、学习Keil软件和Protues软件的联合在线仿真调试系统的使用。
二、实验说明1、使用单片机控制LED来模拟十字路口交通信号灯的切换过程和显示效果。
《单片机原理及应用》实验指导书主编刘炜李庆达审核蔡静之校对杨艺北方民族大学电气信息工程学院二○一○年十月目录第一章 DVCC-52196JH单片机仿真实验系统简介 (2)1-1 DVCC-52196JH单片机仿真实验系统的技术指标 (2)1-2 通用外围电路 (3)1-3 硬件系统的安装和系统启动 (3)1-4 I/O接口器件地址 (4)1-5 MCS-51汇编语言的调试过程 (4)第二章实验项目 (5)实验一清零程序 (5)实验二拆字程序 (6)实验三拼字程序 (7)实验四数据传送程序 (8)实验五 P3.3口输入、P1口输出 (9)实验六脉冲计数 (11)第一章 DVCC-52196JH单片机仿真实验系统简介DVCC系列单片机仿真实验系统可以对MCS-51、MCS-196、十六位微机8086/8088进行实验与仿真,出厂时为MCS-51实验开发系统。
1-1 DVCC-52196JH单片机仿真实验系统的技术指标DVCC系列单片机仿真实验系统由三大部分组成:电源,单板式结构的箱式实验台,主机。
下面具体介绍一下箱式实验台:1.主机含8032CPU,可选配96CPU卡、8088CPU卡;2.配有64K管理程序;3.配有64K用户数据/程序空间,可一次性在线仿真;4.带4*8键盘,6只高亮LED八段数码显示器,10位开关量输入信号,12位开关量输出发光二极管;5.自带EPROM编程器;6.配备各种单片机常用接口芯片,如8253A定时/计数器、ADC0809、DAC0832、并行I/O口8255A、8155、可编程中断接口8259A、串行通信芯片8251A等。
同时,可通过扩展外配可编程键盘、显示控制器、DMA芯片8237A等;7.带有正/负单脉冲发生器、连续脉冲发生器、分频电路等;8.配备单片机控制执行单元,如步进电机、直流电机、继电器、电子音响等;9.可外配温度、压力测量模块;10. 支持ASM-51/96/8088、C51/96等多种语言的汇编、反汇编及动态调试。
实验指导书单片机原理及应用邵阳学院2008年10月目录一、单片机实验室 (3)1.基于“电子通信与自动化创新实验系统”的单片机实验平台 (3)2.基于“电子技术综合实验系统”的单片机实验平台 (3)二.实验项目 (6)实验一:P1口输入输出实验 (6)实验二:定时计数器实验 (8)实验三.分支程序实验 (10)实验四:循环程序实验 (12)实验五:外部中断实验 (13)实验六:子程序实验 (17)实验七:串行通信实验 (18)实验八:数码显示接口电路设计 (20)实验九:A/D转换实验 (21)实验十:数据存储器扩展实验 (23)实验十一:电子时钟设计 (25)实验十二:波形发生器设计 (26)《单片机原理及应用》课程实验指导书一、单片机实验室单片机实验室由“电子通信与自动化创新实验系统”和“电子技术综合实验系统”组成,配有PROTEUS、keil-c51、WAV6000、MCS51、MCS8086等电子设计软件。
承担《单片机原理及应用》、《微机原理与接口技术》课程实验、课程设计及专业综合实验等实践教学任务。
1.基于“电子通信与自动化创新实验系统”的单片机实验平台基于“电子通信与自动化创新实验系统”的单片机实验平台,8051的P0、P1、P2、P3口对用户开放。
MCS-51为编辑软件,支持汇编语言和C语言编辑和调试。
程序存储器的地址从4000H到5FFFH(用户在编程时应注意这一点),中断入口地址如表1,片选信号CS提供的外部数据区地址如表2。
表1:中断入口地址表2:外部数据存储器地址分配在编程时使用CSEG AT ADRE 来确定地址,如:CSEG AT 0000H ;程序复位时从0000H地址开始LJMP STARTCSEG AT 4100H ;表示以下的程序从4100H开始2.基于“电子技术综合实验系统”的单片机实验平台基于“电子技术综合实验系统”的单片机实验平台,以PROTEUS为电子设计软件,以综合实验系统为硬件验证,配有表3所示模块,学生在PROTEUS电子设计软件上实现电子电路的设计与仿真,再在综合实验系统中选用模块,实现电路功能的验证。
下面以一个实例来说明如何操作:(1)设计任务编码开关接P2口,P0口接8只发光二极管,编程实现将开关状态显示在P0口上。
(2)电路设计从PROTEUS 中选取元器件如下:①AT89C51:单片机、②RES 、RX8、RESPACK-8:电阻、8排阻、8上拉电阻、③CRYSTAL:晶振、④CAP 、CAP-ELEC:电容、电解电容、⑤LED-YELLOW:发光二极管(黄色)、⑥DIPSW_3:拨码开关。
放置元器件、放置电源和地、连线,得到下图所示的开关状态显示电路,最后进行电气检测。
(3)程序设计点菜单“Source→Add/Remove source Files”在出现的对话框中,选择ASEM51编辑器,将汇编源程序XXX.asm 输入到文本,然后保存文件。
再点菜单Source→Build ALL 编译汇编源程序,生成目标代码文件XXX.HEX 。
ORG 0000H SJMP MAINMAIN:MOV DPTR ,#TABHMOV P2,#0FFH MOV A,P2 ANL A ,#07H MOVC A ,@A+DPTR MOV P0,A LJMP MAINTABH :DB 0FEH ,0FDH ,0FBH DB 0F7H ,0EFH ,0DFHDB 0BFH ,7FH END(4)程序加载在编辑环境,点右键,在弹出对话框中选择编辑属性,加载XXX.HEX 文件。
(5)系统仿真启动仿真,如果系统设计没有问题,将出现仿真结果。
本例的仿真结果如下:表3 单片机实验模块二.实验项目实验一:P1口输入输出实验1.实验目的(1)掌握P1口同时做输入/输出口使用方法。
(2)学习数据输入、输出程序的设计方法。
2.实验内容P1.03.实验原理图与方法采用右图所示电路,用MOV A,P1指令先读出P1口的状态,然后用ANL A,#03H屏蔽高六位,保留低两位。
根据A的值,用CJNE A,#DATA,LP指令,进行判断,从而确定赋给P1口的值。
也可把开关状态和输出数据建立一个表,用指令MOVC A,@A+DPTR来查出P1的值。
4.实验设备电子通信与自动化创新实验系统,选用8051CPU模块。
5.实验步骤(1)按实验电路进行线路连接(2)在MCS-51编辑环境,进行程序设计和编译(3)下载实验程序(4)点全速运行,改变P1.0、P1.1的状态,观察实验现象,并以表格的形式填写实验数据(5)分析实验数据,得出实验结论,撰写实验报告。
6.程序设计方法一:用CJNE A,#DATA,LP指令实现CSEG AT 0000HLJMP STARTCSEG AT 4100HSTART:MOV P1,#0FFHLP:MOV A,P1ANL A,#00000011BCJNE A,#00,LP0CLR P1.2SETB P1.3SETB P1.4SETB P1.5LJMP LPLP0: CJNE A,#01,LP1CLR P1.3SETB P1.2SETB P1.4SETB P1.5LJMP LPLP1: CJNE A,#02,LP2CLR P1.4SETB P1.3SETB P1.2SETB P1.5LJMP LPLP2: CJNE A,#03,LP3CLR P1.5SETB P1.3SETB P1.4SETB P1.2LP3: LJMP LPEND方法二:用MOVC A,@A+DPTR指令实现CSEG AT 0000HLJMP STARTCSEG AT 4100HSTART:MOV P1,#0FFHLP:MOV A,P1MOV DPTR,#4200HANL A,#0000 0011BMOVC A,@A+DPTRMOV P1,ALJMP LPCSEG AT 4200HDB 0FBH,0F7H,0EFH,0DFHEND实验二:定时计数器实验1.实验目的(1)了解8051定时/计数器的结构和原理。
(2)掌握定时/计数器的设置和编程方法。
2.实验内容P1.0~P1.7分别接发光二极管L1~L8,利用8051定时器定时,编程实现L1~L8循环点灯。
3.实验原理与方法(1)先给A一个初值(0FEH),然后将A送住P1,则L1点亮,然后开定时器,利用查询的方法,当定时时间到,重装初值,A移位,再送P1,这样不断循环就能实现L1~L8循环点亮。
(2)定时常数的确定设定时器工作在方式1,定时时间为0.1s机器周期=12÷晶振频率=12/(6×10⁶)=1us设计数初值为X,则(216-X)×1×10-6=0.1,可求得X=55536化为十六进制则X=D8F0H,故初始值为TH1=D8H,TL1=F0H(3)初始化程序定时器初始化包括TMOD和TH、TL赋值。
定时/计数器的开关由TR决定。
4.实验设备电子通信与自动化创新实验系统,选用8051CPU模块和实验连线。
5.实验步骤(1)按实验电路进行线路连接(2)在MCS-51编辑环境,进行程序设计和编译(3)下载实验程序(4)运行程序,观察实验现象,改变定时器初值,重新进行上述实验(5)记录不同定时计数初值时的实验现象,并加以分析,撰写实验报告。
6.程序设计用定时器延时,实现L1~L8循环点亮的方法主要有:查询,中断,及查表。
下面以查询为例进行介绍。
CSEG AT 0000HLJMP START Array CSEG AT 4100HSTART:MOV A,#0FFHCLR CMOV TMOD,#00HMOV TH0,#D8HMOV TL0,#0F0HSETB TR0LP1:RRC AMOV P1,ALP2:JBC TF0,LP3SJMP LP2 程序流程图LP3: MOV TH0,#D8HMOV TL0,#0F0HLJMP LP1END采用中断、查表法,学生自行研究。
实验三.分支程序实验1.实验目的(1)熟悉分支程序的类型及结构(2)掌握分支程序的设计方法2.实验内容设变量X存放在R2中,函数值Y为R3,按照下式求Y:X+1 ;X﹥20Y= 0 ;10≤X≤20-1 ;X﹤103.实验原理分支程序有下面几种类型:分支程序以条件判断语句,决定程序的转向。
根据题目要求,先分X=10,X>10和X <10三种情况进行分析,然后再对10<X<20,X=20,X>20进行计算。
电子通信与自动化创新实验系统,选用8051CPU模块和实验连线。
4.实验步骤(1)按实验电路进行线路连接(2)在MCS-51编辑环境,进行程序设计和编译(3)下载实验程序(4)运行程序,观察实验现象,改变定时器初值,重新进行上述实验(5)记录不同定时计数初值时的实验现象,并加以分析,撰写实验报告。
5.实验设备电子通信与自动化创新实验系统,选用8051CPU模块和实验连线。
(a)单分支结构(b)双分支结构6.程序设计CSEG AT 0000HLJMP STARTSTART:MOV A,R2CLR CSUBB A,#10JC L1MOV A,R2CLR CSUBB A,#21JNC L2MOV A,#0SJMP L3L1:MOV A,#0FFHSJMP L3L2:MOV A,R2ADD A,#1L3:MOV R3,ASJMP $END在实验过程中,改变R2的值,观察R3的变化。
实验四:循环程序实验1.实验目的⑴熟悉循环程序的类型及结构⑵掌握循环程序设计方法2.实验内容已知80C51单片机晶振的12MHZ,设计一个软件延时程序,延时时间为200ms3.实验原理与方法晶振为12MHZ的单片机一个机器周期为1us,如果采用循环方法,控制程序循环次数,就可以实现定时功能。
1 ms的MT值:(1+1+2)×1us×MT=1000us DL2:MOV R1,#MT ;1个机器周期MT=250 DL1:NOP ;1个机器周期NOP ;1个机器周期DJNZ R1,DL1;2个机器周期4.实验步骤(1)设计实验电路,连接实验线路(2)在MCS-51编辑环境,进行程序设计和编译(3)下载实验程序(4)运行程序,观察实验现象,改变循环值,重复上述实验(5)记录不同循环值时的实验现象,并加以分析,撰写实验报告。
5.实验设备电子通信与自动化创新实验系统,选用8051CPU模块和实验连线6.程序设计ORG 2000HSTART:CPL P1.0MOV R0,#200 ;毫秒数DL2:MOV R1,#MT ;1个机器周期DL1:NOP ;1个机器周期NOP ;1个机器周期DJNZ R1,DL1 ;2个机器周期DJNZ R0,DL2 ;2个机器周期LJMP STARTEND实验五:外部中断实验1.实验目的(1)学习中断应用技术,理解中断产生的原因、中断响应、中断处理。