微机原理及应用实验指导书.docx
《微机原理及应用实验指导书.docx》由会员分享,可在线阅读,更多相关《微机原理及应用实验指导书.docx(36页珍藏版)》请在冰豆网上搜索。
微机原理及应用实验指导书
第一章概述………………………………………………………………………………1
第二章伟福实验系统组成和结构……………………………………………………3
第三章8088/86CPU系列实验…………………………………………………………12
软件实验
1.存储器块清零实验…………………………………………………………….13
2.二进制到BCD码转换实验..………………………………………………….15
3.二进制到ASCII码转换实验………………………………………………….17
4.内存块移动实验………………………………………………………………19
5.多字节加法实验………………………………………………………………21
6.乘法实验实验…………………………………………………………………..23
7.子程序调用实验………………………………………………………………..25
8.数据排序实验…………………………………………………………………..26
硬件实验
1.8255输入输出实验……………………………………………………………28
2.8253计数器实验……………………………………………………………30
3.8253定时器实验……………………………………………………………32
4.8259外部中断实验……………………………………………………………34
5.A/D转换实验……………………………………………………………………36
6.8250串行口通讯实验…………………………………………………………38
第一章概述
《微机原理及应用》实验采用伟福Lab2000仿真实验系统,本仿真实验系统由板上仿真器、实验仪、伟福仿真软件、开关电源构成。
1.1系统实验板
本实验板提供以下实验
(1)数模变换电路
(2)模数变换电路
(3)逻辑电平输入开关
(4)逻辑电平显示电路
(5)单脉冲电路
(6)逻辑笔电路
(7)1MHz及500KHzHH脉冲信号源
(8)PWM转换电压电路
(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.3MCS51系列,80C196系列通用。
配8088/8086附加板,可以进行8088/8086实验。
1.4实验系统自带键盘和显示器,自带系统监控程序。
如果没有系统机也照样进
行各种学习和实验。
1.5配备有DOS,Windows两套PC机系统软件,在有系统机的情况下,通过外接仿真器
实现64K全空间的硬件断点和仿真。
1.6PC机和系统机软件具有全集成化仿真环境,中、英文两种界面,软件仿真
与硬件仿真两种模式,软件仿真可以在无仿真仪的情况下进行。
综上所述,本实验仪可以方便灵活地构成各种实验方案,在有无系统机和实验仪的情况下,都能进行相应的编程实验,从而具有极为广泛的应用范围,板上提供了基本的实验电路,减少繁琐的连接线过程,板上也提供了DIP40/28/24/20/16/14插孔和CPU的地址数据总线引出插孔,供学生自己扩展其它实验,培养实际动手能力,加强对实验电路的理解。
第二章伟福实验系统组成和结构
伟福实验系统可根据教学实践的需要实现MCS51/MCS196单片机原理与接口,8088/8086微机原理与接口的一系列实验,并在硬件上预留了自主开发实验的空间。
该实验系统对基本实验仅需少量连线就可进行,以减轻学生的工作量,同时也提供了一些需较多连线的扩展性实验以进一步锻炼学生的动手能力。
此外,它还为学员们提供了强大的软硬件调试手段。
§2.1伟福实验系统的硬件组成
本实验仪上有丰富的实验电路和灵活的组成方法。
这些电路既可以和8031系列、也可以和80196系列CPU及8088/8086CPU组合完成各种实验。
为了描述清楚,在此作统一的介绍。
2.1LED6位数字显示器
2.24ⅹ6键盘电路
本实验仪已经将LED显示电路和键盘电路集成到一个集成电路中。
LED显示和键盘的等效电路如图1。
其中的U1,U2,U3,U4并不实际是74LS系列电路,它们都被集成在CPLD现场可编程器件内,U5是74164移位寄存器,可以实现串形数到并形数的转换,U6是有反向功能的驱动电路MC1413,向U3的地址(FE04H)分别发高电平和低电平,也就是向U5(74164移位寄存器)发时钟信号,向U4的地址(FE06H)所发的数据,被送到U5(74164移位寄存器)的数据口,这个数据被时钟信号送入U5(74164移位寄存器),转换成并形数据,做为LED的段码。
向U1地址(FE02H)写的数据经U6(MC1413)反相驱动后,做为LED的位码,用于选择的LED位,每次点亮一位,循环显示6位LED显示器,向U1地址写的数据也可以做为键盘列扫描码,从U2地址(FE00H)读回的数据是键盘行数据,U1输出的列扫描码经U2读入后,用来判断是否有键被按下,以及按下的是什么键。
如果没有键按下,由于上拉电阻的作用,经U2读回的值为高,如果有键按下,U1输出的低电平经过按键被接到U2的端口上,这样从U2读回的数据就会有低位,根据U1输出的列信号和U2读回的行信号,就可以判断哪个键被按下。
LED的段码是要经过移位输出的,移位的时钟信号地址为0FE04H,数据信号地址为0FE06H,LED的位码及键盘扫描码输出地址为0FE02H,读回键码的地址为0FE00H。
图1:
键盘及LED显示电路
2.3LED电平显示电路
图2:
LED电平显示电路
实验仪上装有8只发光二极管及相应驱动电路。
见图2,L0―L7为相应发光二极管驱动信号输入端,该输入端为高电压电平“1”时发光二极管点亮。
我们可以通过P1口对其直接进行控制,点亮或者熄灭发光二极管。
2.4逻辑电平开关电路
实验仪上有8只开关K0―K7,并有与之相对应的K0―K7引线孔为逻辑电平输出端。
开关向上拨相应插孔输出高电平“1”,向下拨相应插孔输出低电平“0”。
见图3
图3:
逻辑电平开关电路
2.5单脉冲电路
单脉冲电路由按键(PULSE)和去抖动电路组成,每按一次(PULSE)键产生一个单脉冲。
其中去抖动电路已被集成到CPLD芯片中去,单脉冲的输出信号插孔在单脉冲按键旁,图为“”和“”,分别为正脉冲和负脉冲。
2.6脉冲发生电路
有两路脉冲信号输出端,1MHz脉冲发生电路已被集成到U8电路中去,500KHz是由1MHz经U18二分频后得到。
两个输出插座分别输出1MHz和500KHz脉冲信号。
分频电路如下:
图4:
脉冲分频电路
2.7继电器输出电路
当控制端电平置高,公共触点与常开端吸合。
我们可以将常开端接入一发光二极管,公共端接+5V电平,通过对控制端进行控制,观察发光二极管的状态。
见图5。
图5:
继电器控制电路
2.8A/D转换电路
实验仪上提供了已接好的A/D变换电路。
其中数据、地址总线和控制信号已接好。
用户只要接上输入的模拟信号和片选信号,就能工作。
实验仪上有一个0~5V的可调电位器,将可变电压输出端接入A/D转换电路的输入端,通过CPU软件处理,读进A/D转换值,再将转换值送数码管显示。
我们可以调节电位器,使之输出不同电压值,通过数码管的显示,检验A/D转换正确与否。
图6:
A/D转换电路
2.9D/A转换电路
实验仪上提供了D/A转换电路如下图所示。
我们可以通过软件编程控制D/A转换芯片DAC0832,输出相应电流值,经过采样电路取出模拟量电压值,用电压表测量电压输出端子,读出电压值。
图7:
D/A转换电路
2.10PWM转换电路
PWM为脉宽调制电路,就是通过输出不同占空比的脉冲,来实现模拟量的输出。
图8:
PWM转换电路
2.11音频放大电路
音频放大电路将CPU输出的音频脉冲放大、滤波后,来驱动喇叭发声。
图9:
音频放大滤波电路
2.12可调模拟量输入电路
电位器电路用于产生可变的模拟量。
图10:
电位器
2.13逻辑测量(逻辑笔)电路
本实验仪上有逻辑测量电路,如图11。
可用于测量各种电平,其中红灯亮表示高电平,绿灯亮表示低电平。
如果两灯同时闪动,表示有脉冲信号;两灯都不亮时,表示浮空(高阻态)。
图11:
逻辑笔电路
2.14存储器电路
本实验仪上有一片32K存储器61256。
在无系统机的情况下,从0000H~7EFFH可供用户使用。
7E00H~7FFFH为监控用。
在有系统机的情况下,配合外接仿真器,此RAM的全部空间给用户。
地址是0000H~7FFFH。
2.15逻辑门电路
本实验仪提供系列门电路:
非门,或门,与门,D触发器。
其中有些已被集成在U8芯片中。
2.16仿真插座
在有系统机工作时,将E2000或G6W上的34芯仿真电缆插入实验上该插座内。
2.17实验电路插座
本实验仪具有1个40芯通用电路插座和2个20芯通用电路插座,每个插座的全部引脚都被引出到相应的插孔,40芯通用插座可兼容24和28芯宽间距插座,20芯通用插座可兼容14芯和16芯插座。
利用这些插座,可对双列直插式的各种微机芯片进行实验。
2.18总线插孔
本实验仪上有三排总线插座,用于引出各种总线信号,其中D0~D7为8根数据总线,A0~A15为16根地址总线,CS0~CS3为4根地址选通线,对应的选通地址如下:
均为低电平有效。
CS008000H~09FFFH
CS10A000H~0BFFFH
CS20C000H~0CFFFH
CS30D000H~0DFFFH
另外ALE,RD,WD,BHE为控制总线。
第三排总线插孔的定义为上下两档,如果仿8051,定义看下一行,如果仿80C196,则看上面一行。
2.19串口通信程序实验插孔
本实验仪在使用外接仿真器或使用板上仿真器时,可以用这两个插孔进行RS232通信程序实验,通过实验仪的通信电缆可以实现实验仪数据和系统机数据互传。
2.20串口通信选择
选择USER调试用户串口通信程序,将用户的TXD/RXD信号接到相应插孔上,
就可以将串口信号接到PC机上。
选择EMU用WAVE仿真环境驱动实验仪时,要将跳线设置在EMU端,这样就可以将
编译好的程序代码下传到实验上。
也可以用WAVE仿真的控制指令控制实
验仪的运行。
2.21CPU选择
在实验仪的右上角有两个跳线器,其中跳线器JP2用于CPU种类的选择
选择18051本实验仪对8051单片机进行仿真。
选择080C196本实验仪对80C196单片机进行仿真。
本实验仪上有两个CPU插座,一个为8031,一个为80C196KC。
仿真哪一种CPU,就插哪一种CPU芯片,两种CPU芯片不能同时插。
所插CPU的种类应和跳线器的选择相同。
当仿真8088/8086时,此跳线不用。
同时要将8031和80C196芯片拔掉。
2.22仿真方式选择
跳线器JP1用于仿真方式的选择。
选择1Localctrl不用系统机仿真,仿真仪上的键盘和LED显示器既可作为
监控系统用,也可以作为用户资源.软件断点。
选择0EXT_CTRL用系统机和仿真器进行仿真,断点空间为64K,键盘和LED
显示器都作为用户资源。
硬件断点.
§2.2伟福实验系统的支持软件
板上单片机仿真部分(使用WAVE集成调试软件)
●支持DOS、Windows'95/98双平台
●具有编辑、汇编、编译、调试和软件模拟等功能,所有操作均可通过窗口和菜单的选择来完成。
方便用户编写和调试软件、直观反映程序运行情况,提高软件开发效率。
●支持汇编语言,C,PLM高级语言源程序调试
●可观察数组,记录等各种复杂变量
●可脱开实验系统单独进行软件模拟,这种方式尤其适用于软件实验
§2.3外接单片机仿真功能
除具有板上仿真器所有功能外,还具有以下特点:
1、不占用任何用户资源
2、硬件断点
3、仿真系统可分段或全区域提供仿真空间,最大0000H-0FFFFH
4、可分段或全区域出借RAM给用户作数据存储器使用。
5、提供硬件诊断、测试功能
第四章8088/86CPU系列实验
§4.1系统的安装和启动
1、仿真开发系统集成调试软件的安装和使用见WAVE仿真开发系统使用手册。
2、用户根据实验要求,进行8088/86CPU实验时,应先拔下80C51CPU和80C196CPU,并插上8088/86扩展板。
3、将串口通信选择设在EMU位置,JP1设在1位置使用板上仿真器,JP2的位置可任意。
4、将配套的串行通讯电缆的一端与实验台的RS2329芯D形插座相连,另一端与PC相的串行口相连。
5、将实验台的电源线与220V电源相连。
(实验结束后应拔下)
6、打开实验台电源开关,红色电源指示灯亮。
仿真开发器初始化成功后,会在LED上显示‘8088’。
7、打开计算机电源,执行WAVE集成调试软件。
注意:
(1)无论是集成电路的插拔、通讯电缆的连接、跳线器的设置还是实验线路的连
接,都应确保在断电情况下进行,否则可能造成对设备的损坏。
(2)实验线路连接完成后,应仔细检查无误后再接通电源。
§4.28088/86CPU系列实验操作步骤
1、按照实验电路连线。
(切记:
关闭实验箱电源)
2、在桌面上双击WAVE图标。
3、
建立与伟福实验箱的通信仿真器的选择:
Lab2000仿真实验系统
(仿真器设置)仿真头:
8088/86实验
通信设置:
COM1+波特率115.200
4、编写实验程序。
5、编译,同时也是将程序下传到实验台。
6、运行(全速执行,单步,跟踪),观察现象并检查结果。
7、关实验箱电源,将实验接线放回原处,关主机。
注:
如果是软件实验,在进行仿真器的设置时,可以选择软件模拟器,这样可以脱开实验系统单独进行软件模拟。
软件实验一存储器块清零实验
一、实验目的:
1、掌握存储器读写方法
2、了解存储器的块操作方法
二、实验内容:
指定存储器中某块的起始地址和长度,要求能将其内容清零。
具体要求:
将数据段中以BLOCK地址(0400H)开始的256个内存单元清零。
三、实验用设备仪器及材料:
计算机,伟福Lab2000仿真实验箱。
四、实验方法及步骤:
1、打开实验箱电源。
2、在windows桌面上双击WAVE图标。
3、建立与伟福实验箱的通信仿真器的选择:
Lab2000仿真实验系统
仿真头:
8088/86实验
端口选择:
COM1
4、编写实验程序。
5、编译:
项目\编译,编译的过程同时也是将程序下传到实验台。
6、程序执行前:
检查数据段中以BLOCK地址开始的256个单元的内容。
7、运行(全速执行,单步,跟踪)。
8、程序执行后:
检查数据段中以BLOCK地址开始的256个单元的内容。
9、关实验箱电源,关主机。
五、实验程序流程图:
六、发挥部分:
1、编写程序,实现将存储器0400H---04FFH的256个单元改为0---FFH。
2、编写程序,实现将存储器0400H---0463H的100个单元改为0---99D。
软件实验二二进制到BCD码转换实验
一、实验目的:
1、掌握简单的数值转换算法。
2、基本了解数值的各种表达方法。
二、实验内容:
将给定的一个二进制数,转换成二十进制(BCD)码
具体要求:
二进制数放在AX中,结果放在Result开始的三个单元中。
三、实验用设备仪器及材料:
计算机,伟福Lab2000仿真实验箱。
四、实验说明:
计算机中的数值有各种表达方式,这是计算机的基础。
掌握各种数制之间的转换是一种基本功。
五、实验方法及步骤:
1、打开实验箱电源。
2、在windows桌面上双击WAVE图标。
3、建立与伟福实验箱的通信仿真器的选择:
Lab2000仿真实验系统
仿真头:
8088/86实验
端口选择:
COM1
4、编写实验程序。
5、编译:
项目\编译,编译的过程同时也是将程序下传到实验台。
6、运行(全速执行,单步,跟踪),检查结果。
7、关实验箱电源,关主机。
六、实验程序流程图:
七、发挥部分:
1、将给定的BCD码转换成二进制码。
软件实验三二进制到ASCII码转换实验
一、实验目的:
1、了解二进制值和ASCII值的区别
2、了解如何将二进制值转换成ASCII值
3、了解如何查表进行数值转换及快速计算。
二、实验内容:
给出一个二进制数,将其转换为ASCII码值。
具体要求:
二进制数放在AX中,转换的结果即ASCII码放在Result开始的二个单元中。
三、实验用设备仪器及材料:
计算机,伟福Lab2000仿真实验箱。
四、实验说明:
此实验主要让学生了解数值的二进制码和ASCII码的区别,利用查表功能可能快速地进行数值转换。
进一步了解数值的各种表达方式。
五、实验方法及步骤:
1、打开实验箱电源。
2、在windows桌面上双击WAVE图标。
3、建立与伟福实验箱的通信仿真器的选择:
Lab2000仿真实验系统
仿真头:
8088/86实验
端口选择:
COM1
4、编写实验程序。
5、编译:
项目\编译,编译的过程同时也是将程序下传到实验台。
6、运行(全速执行,单步,跟踪),检查结果。
7、关实验箱电源,关主机。
六、实验程序流程图:
七、发挥部分:
1、将给定的ASCII码转换成二进制。
软件实验四内存块移动实验
一、实验目的:
1、了解内存中数据块移动方法。
2、掌握串操作指令的使用方法。
二、实验内容:
将存储单元中指定源地址(0400H)和长度为256字节的数据块移到指定目标位置(0500H)。
三、实验用设备仪器及材料:
计算机,伟福Lab2000仿真实验箱。
四、实验说明:
块移动是计算机常用操作之一,多用于大量的数据复制操作。
本程序是给出起始地址,用地址加一方法移动块。
五、实验方法及步骤:
1、打开实验箱电源。
2、在桌面上双击WAVE图标。
3、建立与伟福实验箱的通信仿真器的选择:
Lab2000仿真实验系统
仿真头:
8088/86实验
端口选择:
COM1
4、编写实验程序。
5、编译:
项目\编译,编译的过程同时也是将程序下传到实验台。
6、程序执行前,检查0400H开始的256个单元的内容及0500H开始的256个单元的内容。
7、运行(全速执行,单步,跟踪)。
8、程序执行后,检查0500H开始的256个单元的内容,看结果是否正确。
9、关实验箱电源,关主机。
六、实验程序流程图:
七、发挥部分:
1、将存储单元中源首地址为0420H的256个单元的数据传送到目的首地址为0400H的256个单元中。
2、将存储单元中原首地址为0400H的256个单元的数据传送到目的首地址为0420H的256个单元中。
★以上两个题目考虑到了源块地址与目的块地址重叠的情况。
软件实验五多字节加法实验
一、实验目的:
1、了解加法指令,非压缩(压缩)BCD加法调整指令的使用方法。
2、了解加法程序设计的方法。
二、实验内容:
1、做两个多字节压缩BCD码数相加。
具体要求:
被加数放在0400H开始的n个连续的单元中,加数放在0410H开始的n个连续的单元中,结果放在0420H开始的n个连续的单元中。
三、实验用设备仪器及材料:
计算机,伟福Lab2000仿真实验箱。
四、实验方法及步骤:
1、打开实验箱电源。
2、在桌面上双击WAVE图标。
3、建立与伟福实验箱的通信仿真器的选择:
Lab2000仿真实验系统
仿真头:
8088/86实验
端口选择:
COM1
4、编写实验程序。
5、编译:
项目\编译,编译的过程同时也是将程序下传到实验台。
6、输入参数(即在存储区输入被加数以及加数)
7、运行(全速执行,单步,跟踪)。
8、察看0420H开始的n个连续的单元,检查结果是否正确。
8、关实验箱电源,关主机。
五、实验程序流程图:
六、发挥部分:
1、设计两个多字节十六进制数相加,以及两个多字节非压缩BCD码数相加。
2、设计两个多字节压缩BCD码数相减。
软件实验六乘法实验
一、实验目的:
1、掌握乘法指令,非压缩BCD码乘法调整指令的使用方法。
2、了解乘法程序设计的方法。
二、实验内容:
1、做非压缩BCD码数相乘。
具体要求:
5位被乘数*1位乘数=〉6位积。
被乘数放在0400H开始的5个连续的单元中,乘数放在0410H开始的1个单元中,积放在0420H开始的6个连续的单元中。
三、实验用设备仪器及材料:
计算机,伟福Lab2000仿真实验箱。
四、实验方法及步骤:
1、打开实验箱电源。
2、在桌面上双击WAVE图标。
3、建立与伟福实验箱的通信仿真器的选择:
Lab2000仿真实验系统
仿真头:
8088/86实验
端口选择:
COM1
4、编写实验程序。
5、编译:
项目\编译,编译的过程同时也是将程序下传到实验台。
6、输入参数,即在存储区中输入被乘数与乘数。
7、运行(全速执行,单步,跟踪)。
8、察看0420H开始的6个单元,看结果是否正确。
9、关实验箱电源,关主机。
五、实验程序流程图:
软件实验七子程序调用实验
一、实验目的:
1、了解子程序调用结构。
2、了解子程序调用的编程方法。
二、实验内容:
在有子程序调用结构的程序中,能够按调用号执行相应的功能,完成指定操作。
三、实验用设备仪器及材料:
计算机,伟福Lab2000仿真实验箱。
四、实验方法及步骤:
1、打开实验箱电源。
2、在桌面上双击WAVE图标。
3、建立与伟福实验箱的通信仿真器的选择:
Lab2000仿真实验系统
仿真头:
8088/86实验
端口选择:
COM1
4、编写实验程序。
5、编译:
项目\编译,编译的过程同时也是将程序下传到实验台。
6、运行(全速执行,单步,跟踪),观察结果。
7、关实验箱电源,关主机。
五、实验程序流程图: