单片机原理及应用(实验指导书)

更新时间:2023-09-09 22:10:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

目录

第一章 概述 1 第二章 伟福实验系统组成和结构 3 2、1 伟福实验系统的硬件组成 3 2、2 伟福实验系统的支持软件 9 2、3 外接单片机仿真功能 9 第三章 板上仿真器使用方法 10 3、1 显示功能说明 3、2 键盘功能说明 3、3 脱机仿真 第四章 系统的使用 第五章 参考实验程序 一、多字节算数运算程序 1、多字节BCD数加法 2、多字节二进制数减法 3、双字节二进制数乘法 4、双字节二进制数除法 二、代码转换程序 1、二进制到BCD码转换 2、BCD码到ASCII码转换 三、显示实验 1、八段数码管显示 2、键盘扫描显示 四、电子时钟 五、单片机串行口通讯实验 六、D/A、A/D转换实验 1、D/A转换实验 2、A/D转换实验 10 10

11 14 16

16

16 17 19 20 23

23 25 26

26 30 36 39 43

43 45

伟福Lab2000系列单片机 仿真实验系统上机说明

第一章 概述

近十年来,我国经济快速稳步增长,电力建设发展十分迅速。目前,无论是发电厂、变电站及输电线路,还是各种配电网络,广泛采用各种微机化仪器设备,如微机励磁装置、微机调速装置、微机保护装置、微机载波通信设备、微机无功补偿控制器以及相应的计算机监控系统等。作为电力和动力专业的一门重要的计算机应用技术基础课程,“单片机原理及应用”对于学生掌握电站和电力系统自动装置的工作原理及结构十分重要。 为提高学生的计算机应用能力、科学实验技能以及动手能力,培养出高素质的专业人才,实验装置采用先进的伟福Lab2000教学实验仪,它具有功能强,使用灵活方便等特点。通过选择不同的MPU/CPU型号,可实现MCS-51/MCS-96/8086计算机系统实验。

伟福仿真实验系统由板上仿真器、实验仪、伟福仿真软件、开关电源构成,具有双平台(DOS版本、WINDOWS版本)、双工作模式(软件模拟仿真、硬件仿真)、双(多)CPU 结构、双集成环境、强大的逻辑分析仪综合调试功能和追踪器功能,可以通过更换不同的POD,对各种不同类型的单片机进行仿真。

1.1 系统实验板

本实验板提供以下实验: (1) 数模变换电路 (2) 模数变换电路

(3) 逻辑电平输入开关 (4) 逻辑电平显示电路 (5) 单脉冲电路 (6) 逻辑笔电路

(7) 1MHz及500KHz脉冲信号源 (8) PWU转换电压电路

(9) 模拟量电压(电位器)电路 (10) 串口通信实验电路 (11) 扬声器驱动电路 (12) 继电器控制电路 (13) 逻辑门电路

(14) 六位8段码LED数字显示器 (15) 4x6键盘 (16) 存贮器

(17) 通用集成电路插座(DIP40/28/24/20/18/16/14) (18) 地址,数据及控制电路总线接出插座

通过可选附件还可以扩展完成以下实验: (19) 步进电机实验 (20) 打印机驱动实验 (21) 传感器实验 (22) 直流电机实验

1.2 仿真器系统构成

本仿真实验系统具有四种使用方法:

(1)无系统机,仅用实验仪的板上仿真器进行仿真和实验。

(2)有系统机,用系统机上的WINDOWS/DOS软件驱动板上仿真器进行仿

真和实验.

(3)有系统机、用外接仿真器进行仿真和实验。

(4)无实验仪、无仿真器,仅在系统机上采用软件模拟方式进行仿真。

1、3 MCS51系列,80C196系列通用。配8088/8086附加板,可以进行8088

/8086实验。

1、4 实验系统自带键盘和显示器,自带系统监控程序。如果没有系统机也

照样进行各种学习和实验。

1、5 配备有DOS,Windows两套PC机系统软件,在有系统机的情况下,通过

外接仿真器实现64K全空间的硬件断点和仿真.

1、6 PC机和系统机软件具有全集成化仿真环境,中、英文两种界面,软件

仿真与硬件仿真两种模式,软件仿真可以在无仿真仪的情况下进行。

综上所述,本实验仪可以方便灵活地构成各种实验方案,在有无系统机

和实验仪的情况下,都能进行相应的编程实验,从而具有极为广泛的应用范围,板上提供了基本的实验电路,减少繁琐的连接线过程,板上也提供了DIP40/28/24/20/16/14插孔和CPU的地址数据总线引出插孔,供学生自己扩展其它实验,培养实际动手能力,加强对实验电路的理解。实验程序采用多种语言适应不同层次的学生的需要,通过应用高级语言的编程和实验,可使学生掌握高级语言的编程方法,为今后进入社会实践打下坚实的基础,而汇编语言又能让学生了解机器深层的原理.

第二章 伟福实验系统组成和结构

伟福实验系统可根据教学实践的需要实现MCS51/MCSl96单片机原理与

接口,8088/8086微机原理与接口的一系列实验,并在硬件上预留了自主开发实验的空间。该实验系统对基本实验仅需少量连线就可进行,同时也提供了一些需较多连线的扩展性实验以进一步锻炼动手能力。此外,它还提供了强大的软硬件调试手段.

2.1 伟福实验系统的硬件组成

本实验仪上有丰富的实验电路和灵活的组成方法。这些电路既可以和

8031系列,也可以和80196系列CPU及8088/8086CPU组合完成各种实验。为了描述清楚,在此作统一的介绍。 2.1.1 LED6位数字显示器 2.1.2 4x6键盘电路

本实验仪已经将LED显示电路和键盘电路集成到一个集成电路中。LED显示和键盘的等效电路如图1。其中的U1,U2,U3,U4并不实际是74LS系列电路,它们都被集成在CPLD现场可编程器件内,U5是74164移位寄存器,可以实现串行数到并行数的转换,U6是有反向功能的驱动电路,向U3的地址分别发高电平和低电平,也就是向U5(74164移位寄存器)发时钟信号,向U4的地址所发的数据,被送到U5(74164移位寄存器)的数据口,这个数据被时钟信号送入U5(74164移位寄存器),转换成并行数据,作为LED的段码。向U1地址写的数据经U6(MCl413)反相驱动后,作为LED的位码,用于选择的LED位,每次点亮一位,循环显示6位LED显示器,向U1地址写的数据也可以作为键盘列扫描码,从u2地址读回的数据是键盘行数据,U1输出的列扫描码经U2读入后,用来判断是否有键被按下,以及按下的是什么键。如果没有键按下,由于上拉电阻的作用,经U2读回的值为高,如果有键按下,U1输出的低电平经过按键被接到u2的端口上,这样从u2读回的数据就会有低位,根据U1输出的列信号和U2读回的行信号,就可以判断哪个键被按下。 2.1.3 LED电平显示电路

实验仪上装有8只发光二极管及相应驱动电路。见图2,L0—L7为相应发光二极管驱动信号输入端,该输入端为高电压电平“1”时发光二极管点亮.我们可以通过P1口对其直接进行控制,点亮或者熄灭发光二极管。

图2: LED电平显示电路

2.1.4 逻辑电平开关电路

实验仪上有8只开关K0--K7,并有与之相对应的K0--K7引线孔为逻辑

电平输出端.开关向上拨相应插孔输出高电平“1”,向下拨相应插孔输出低电平“0”,见图3。

图3: 逻辑电平开关电路

2.1.5 单脉冲电路

单脉冲电路由按键(PULSE)和去抖动电路组成,每按一次(PULSE)

键产生一个单脉冲。其中去抖动电路已经被集成到U8芯片中去,单脉冲的输出信号插孔在总线区内。 2.1.6 脉冲发生电路

有两路脉冲信号输出端,1MHZ脉冲发生电路已经被集成到U8电路中

去,500MHZ是由1MHZ经U18二分频后得到。两个输出插座分别输出1MHZ和500MHZ脉冲信号。分频电路如图4:

图4: 脉冲分频电路

2.1.7 继电器输出电路

当控制端电平置高,公共触点与常开端吸合,我们可以将常开端接

入一发光二极管,公共端接+5V电平,通过对控制端进行控制,观察发光二极管的状态。见图5。

图5: 继电器控制电路

第三章 板上仿真器使用方法

3. 1 显示功能说明

本实验仪共有6 位LED 发光数码管,左4位为地址位,右2位为数据位。当地址位4位数均有数值时,表示地址是程序存储器的地址或数据存储器的地址。当地址数码管只有右边2位时,表示内部寄存器地址。当地址数码管只有右边3位时( 最左面1 位暗,第二位显示“0”,第3和4位为数字),表示是内部特殊寄存器(SFR)的地址。最右边的两位是数据位,表示左边4位显示的地址单元中的数据。 3. 2 键盘功能说明

[RST]键:整机复位键。复位后数码管的地址位显示“8051”字样,表示复位操作完成。复位后程序存储器和外部数据存储器中的内容不变,程序指针回到0000处。CPU内部寄存器复位后为单片机复位操作规定的值,即有的寄存器中的数据不变,有的寄存器中的数据被复位。 [0]到[F]键:数字输入键。用于输入16进制数。

[MON]键:监控键。表示某些操作已结束。某些操作的所有步骤完成后,按[MON]键表示操作结束。 [Trace]键:跟踪执行键。在调试程序时先按[MON]键,最左侧一只LED数码管现示“P”,这时每按一次[Trace]键执行一条用户编写的单片机指令,如过遇到调用指令,跟踪到调用内部,可逐条检查用户程序的执行情况。 [Step]键:单步执行键。与[Trace]键不同的地方是执行到调用语句时,按一次此键将执行调用所含的所有语句。 [Last]键:地址减1键。有两个作用:

○1触发显示寄存器和存储器中的数据。在地址位上输入了

寄存器或存储器中的地址时,按第一次[Last]键,数据显

示数码管开始显示数据。

○2地址减1。在仿真器上输入地址后,在第二次以及之后的

各次按键时,每按一次[Last]键,地址值自动减一,地

10

址值所对应的数据同时更换。

[Next]键:地址加1键。两项功能与[Last]键类似,区别是[Next]键进行地址加1操作。

[Here]键:断点运行键。设置中断程序运行的地址,使程序执行到中断地址处停止执行,在中断地址处等待新的命令。设置中断的情况有两种: ○1程序从0000地址处执行的中断点:

A. 按[RST]键复位,再按[MON]键,数码管显示“P”;

B. 输入4位中断地址; C. 按[Here]键。

按[Here]键后,中断地址确定,同时启动程序,程序自动执行到中断点停止,等待用户命令,此时显示中断点的地址和A寄存器中的内容。

○2先使程序执行到某处,再设置中断点:

A. 先用单步、跟踪、中断等运行方式使程序执行到某

处停止;

B. 按[MON]键,使地址数码管显示“P”; C. 输入中断地址; D. 按[Here]键。

按键后,程序自动从设置前的停止处执行到所设的中断地址处。

[Exec]键:全速执行键。调试程序时,设置好执行的初始地址后,按

[Exec]键可自动执行程序。 3.3 脱机仿真

下面根据仿真时的各类需要,逐一介绍有关的操作方法: 3.3.1 将汇编源程序转换为机器码

在仿真工作之前,应把汇编源程序转换为机器码。可用人工查手册的方法逐条翻译成机器码,在翻译成机器码的同时还要为各条机器码安排地址。也可用计算机自动汇编井生成列表文件,列表文件是指同时含有源程序、机器码和机器码地址的文件。用计算机生成机器码可避免人工翻译造成的人为错误,汇编的效率也远高于人工翻译。 3.3.2 输入程序的机器码

3.3.2.1 由计算机输入程序机器码

为了节省输入机器码的时间,可先由计算机向仿真器输入机器码,然后再脱离计算机独自仿真。用计算机输入程序时先用:MCS51/S1命令启动软件,调入用户的汇编源文件,选择仿真模式,执行汇编命令,汇编结束后机器码自动装入仿真器中。然后,关断计算机和仿真器的电源,拔出RS232接口插头。

3.3.2.2 人工输入程序机器码

如果没有计算机时,则用人工方法输入。人工输入的方法是: (1).按[RST]键,整机复位。

(2).按[MON]键,使地址数码管出现“P”字符。

11

(3).输入4位地址码,此时地址位上显示的是输入的地址数,数据位上的数码管不亮。

(4).先按[Next]或[Last]键,数据位上的数码管闪烁,此时,再输入2位数据。

(5).程序输入完毕,可依次按[RST]、[MON]、4位地址数、[Next]键,检查输入的机器码,不断地按[Next]或[Last]键,可依次逐个检查各个地址中的数据,数据形式是16进制。 3.3.3 执行程序

3.3.3.1 跟踪执行程序

当需要由用户通过键盘控制,逐条执行程序,以便检查单片机内部和

外部电路时,可采用跟踪执行的方式。跟踪执行时如果遇到调用指令,仿真器将使程序的指针进入被调用的程序段内部。跟踪执行键[Trace],以跟踪方式执行程序的操作方法是: (1).按[RST]键整机复位。

(2).按[MON]键使地址数码管出现字符“P”。

(3).输入程序执行的起始地址,此时,4位地址数码管显示地址值,数据数码管暗。

(4).按[Trace]键,数据数码管亮,此后每按一次[Trace]键,执行一条指令。

3.3.3.2单步执行程序

单步执行程序的作用与跟踪执行相仿,区别是单步执行遇到调用时,

将自动连续地执行调用内部的所有指令,然后停在调用执行后的第一条指令上,可继续单步执行。以单步方式执行程序的操作方法是: (1).按CRST]键整机复位。

(2).按[MON]键使地址数码管出现字符“P”。

(3).输入程序执行的起始地址,此时,4位地址数码管显示地址值,数据数码管暗。

(4).按[Step]键,数据数码管亮,此后每按一次[Step]键,执行一条指令。

3.3.3.3全速执行程序

当需从用户指定的程序地址处开始全速运行整个程序,或全速运行到断点处时,可采用全速执行方式。全速执行的操作方法是: (1).按CRST]键,整机复位。 〃

(2).按[MON]键使地址数码管出现字符“P”。

(3).输入程序执行的起始地址,此时,4位地址数码管显示地址值,数据数码管暗。

(4).如果需要设置断点,可按上面介绍的[Here]命令。 (5).按[Exec]键,全速执行。程序运行时地址数码管数据数码管均暗。 (6).按[RST]中断运行。 3.3.3.4检查执行结果

当运用上述的各种执行方式运行程序时,需要及时地了解程序执行的结果,而运行结果很大程度上是由单片机内部各个部分的当前值来反映的。仿真器提供了查看单片机(由仿真器模仿)内部各个部分情况的功能,检查执行结果的主要任务就是查看单片机内部的情况。

12

检查单片机内部各个寄存器、累加器、接口电路的方法在下面讲述: ● 检查和修改单片机内部寄存器数据:

在调试过程中,如果需要查看当前状态下内部寄存器的情况,可

按下列步骤进行:

(1)、查出单片机内部寄存器地址码。如R1地址为01H。

(2)、根据内部寄存器地址码输入2位地址码,此时地址数码管的

右2位显示地址数,左2位暗。

(3)、按[Next]或[Last]键,使数码位出现内部寄存器中的数值。 (4)、如果要查看相邻地址的寄存器的内容,可继续按[Next]或

[Last]键。

(5)、如果要修改内部寄存器中的内容,可按数字键[0]…[F]。 ● 检查和修改单片机内部专用寄存器(SFR)数据:

在调试过程中,如果需要查看当前状态下单片机内部专用寄存器

(SFR)的情况,可按下列步骤进行:

(1)、查出单片机内部专用寄存器(SFR)地址码。如ACC地址为EOH. (2)、仿真器规定专用寄存器地址要用3位数表示,专用寄存器的

地址是2位,需先输入一个先导“0”,再输入2位专用寄存器地址码。地址输入后,此时地址数码管的右3位显示地址数,最左1位暗。

(3)、按[Next]或[Last]键,使数码位出现专用寄存器中的数值。 (4)、如果要查看相邻地址的专用寄存器的内容,可继续按[Next]

或[Last]键。

(5)、如果要修改专用寄存器中的内容,可按数字键[0]…[F]。 注意:在查看专用寄存器时,不可按[RST]键,因为按此键后各个专

用寄存器中的内容将被复位。

● 检查和修改单片机程序存储器:

(1)、按[MON]键,地址数码管出现“P”字样。

(2)、输入4位地址,此时4位地址数码管亮,2位数据数码管暗。 (3)、按[Next]或[Last]键,2位数据数码管亮,显示的即为4位

地址单元中的机器码值,如要修改则可按[0]…[F]键。

(4)、再按[Next]或[Last]键可查看相邻的地址中的机器码值。 ● 检查和修改单片机外部数据存储器: (1)、按[MON]键,地址数码管出现“ ,”字样。

(2)、输入4位地址,此时4位地址数码管亮,2位数据数码管暗, (3)、按[Next]或[Last]键,2位数据数码管亮,显示的即为4位

地址单元中的机器码值,如要修改则可按[0]…[F]键。

(4)、再按[Next]或[Last]键可查看相邻的地址中的机器码值。

13

第四章 系统的使用

4.1系统的安装和启动

(1) 进行MCS51单片机实验时,在U2插座上插入8031或8032芯片(如果

68脚的U1插座上装有80C196芯片应将其拔下).

(2) 将串口通信选择设在EMU位置,JP2设在1位置选择仿真8051。 (3) 将配套的串行通讯电缆的一端与RS232 9芯D形插座相连,另一端与

PC机的串行口相连。

(4)连接220V电源(实验结束后应拔下)。

(5) 打开实验台电源开关,红色电源指示灯亮。 (6) 打开计算机电源,执行WAVE集成调试软件。 注意:

A.无论是集成电路的插拔、通讯电缆的连接、跳线器的设置还是实验线路的连接,都应确保在断电情况下进行,否则可能造成对设备的损坏。

B.实验线路连接完成后,应仔细检查无误后再接通电源。

4.2用系统机仿真:

(1)、双击桌面上“WAVE”图标,打开伟福软件。 (2)、设置仿真器:

打开仿真器设置可用以下两种方法:

1点击任务栏中“仿真器”,选择“仿真器设置”; ○

2点击“仿真器设置图标”。 ○

A、“语言”设置:

“编译器选择”选“伟福汇编器”。

“缺省显示格式”选“混合十、十六进制”。

注意:

A、不可轻易改动“LINK命令行”的内容,否则会造成编译连

接问题。 B、“目标文件”设置:

选中“缺省地址”、“生成BIN文件”、“生成HEX文件”。

C、“仿真器”设置:

“选择仿真器”栏选“Lab2000仿真实验系统”。 “选择仿针头”栏选“MCS51实验”。

D、“通信设置”:

“端口选择”栏选“COM1”。 “波特率选择”栏选“115,200”。 设置完毕点击“测试串行口”,若串行口测试正常则关闭“测试串行口”,点击“好”,仿真器进行初始化,出现“伟福仿真器”窗口,窗口中出现“仿真方式:伟福硬件仿真器,型号:Lab2000仿真实验系统+MCS51实验(8031/32) 编号:2001110237”字样,点击“好”完成仿真器设置;若串口测试出现错误,则检查仿真器电源和串行口

14

本文来源:https://www.bwwdw.com/article/zqlh.html

Top