微机原理与接口技术实验指导
软件部分
第一章 DEBUG的使用方法
DEBUG主要命令
DEBUG是为汇编语言设计的一种高度工具,它通过单步、设置断点等方式为汇编语言程序员提供了非常有效的调试手段。??
一、DEBUG程序的调用?
在DOS的提示符下,可键入命令:?
C:\DEBUG [D:][PATH][FILENAME[.EXT]][PARM1][PARM2]?
其中,文件名是被调试文件的名字。如用户键入文件,则DEBUG将指定的文件装入存储器中,用户可对其进行调试。如果未键入文件名,则用户可以用当前存储器的内容工作,或者用DEBUG命令N和L把需要的文件装入存储器后再进行调试。命令中的D指定驱动器PATH为路径,PARM1和PARM2则为运行被调试文件时所需要的命令参数。?
在DEBUG程序调入后,将出现提示符,此时就可用DEBUG命令来调试程序。二、DEBUG的主要命令?
1、显示存储单元的命令D(DUMP),格式为:?
_D[address]或_D[range]?
例如,按指定范围显示存储单元内容的方法为:?
-d100 120
18E4:0100 c7 06 04 02 38 01 c7 06-06 02 00 02 c7 06 08 02 G...8.G.....G...
18E$:0110 02 02 bb 04 02 e8 02 00-CD 20 50 51 56 57 8B 37 ..;..h..M PQVW.
7
18E4:0120 8B
其中0100至0120是DEBUG显示的单元内容,左边用十六进制表示每个字节,右边用ASCII字符表示每个字节,?表示不可显示的字符。这里没有指定段地址,D命令自动显示DS段的内容。如果只指定首地址,则显示从首地址开始的80个字节的内容。如果完全没有指定地址,则显示上一个D命令显示的最后一个单元后的内容。?
2、修改存储单元内容的命令有两种。?
?输入命令E(ENTER),有两种格式如下:第一种格式可以用给定的内容表来替代指定范围的存储单元内容。命令格式为:?
-E address
第三章 实验内容
主要仪器设备:
微型计算机(装有DEBUG,MASM,link)软件
实验报告要求:
实验目的,实验要求,程序流程图,资源分配,程序清单(附有注释),并带有DEBUG调试时的机器码,实验中遇到的问题及解决方案。
实验一 两个多位二进制数相加减实验
一、实验要求
将两个多位二进制数相加,要求被减数,减数均以二进制形式按顺序存放在以DATA1和DATA2为首的5个内存单元中(低位在前),结果送回DATA1处。
二、实验目的
1、学习数据传送和算术运算指令的用法。
2、掌握循环程序设计方法
3、熟悉使用DEBUG的用法,并且用在DEBUG下编写、运行和调试查看其机器代码和各寄存器的内容是什么。
4、 熟悉在PC机上用宏汇编软件建立、汇编、链接、调试和运行汇编语言程序的过程,并用DEBUG进行调试。
实验二 大小写字母转换实验
一.实验要求
先显示提示信息,接收键盘输入一个字母并确定大写转小写,然后显示转换信息及转换结果,并有按任意键返回信息以及返回DOS操作
二.实验目的
1、了解小写字母和大写字母在计算机内的表示方法,并学习如何进行转换。
2、掌握简单的DOS系统功能调用
实验三 函数运算实验
一.实验要求
计算函数Z=(W-X*X-3*Y)/X的值,其中W,X,Y,Z均为8位带符号数
二.实验目的
1、掌握算术运算类指令的使用方法。
2、熟悉DEBUG调试.EXE文件的使用方法。
实验四 分支程序实验
一.实验要求
判断输入的两位字符的正负
1、 显示输入提示信息,输入并显示输入数据,格式为第一位为符号位,第二位为数据
2、 判断输入数据正负及零,显示为“+”,“-”,“0”,要带有提示信息及按任意键返回信息及操作
*3、并将其补码存入DATA1开始的单元,并显示其补码信息
二.实验目的
1、掌握分支结构程序设计方法
2、掌握简单DOS系统功能调用使用方法
实验五 密码程序设计
一.实验要求
输入一个3位密码为123,正确时显示欢迎信息,错误时显示错误信息
1、显示输入密码信息,密码以回车结束,且每输入一个字符显示为“*”
*2、示确认密码信息,也以回车结束,同上
*3、两次密码不一样则显示两次输入错误信息
4、密码正确则显示欢迎信息,密码错误则显示密码错误信息
5、显示按任意键返回信息及操作
二.实验目的
1、掌握完整软件设计方法
2、掌握简单DOS系统功能调用使用方法
实验六 BCD码相乘实验
一.实验要求
实现BCD码的乘法,要求被乘数和乘数以组合的BCD码形式存放,各占一个内存单元.乘积存入在另外两个内存单元中.由于没有组合的BCD码乘法指令,程序中采用将乘数1作为计数器,累加另一个乘数的方法得到计算结果。
二.实验目的
掌握用组合的BCD码表示数据,并熟悉怎样实现组合BCD码乘法运算。
实验七 响铃程序
一.实验要求
从键盘接收输入字符,如是数字N,则响铃N次,如不是数字或数字是0,则不响。
二.实验目的
掌握响铃符的使用方法。
实验八 排序实验
一.实验要求
使用DEBUG程序,从首址为1000H的内存区开始存放50个数,要求设计程序将这些数由小到大排序,排序后的数,仍放在该区域中。
二.实验目的
掌握用汇编语言编写气泡排序程序的思路和方法。
实验九 学生成绩名次表实验
一.实验要求
根据提示将0~100之间的10个成绩存入首址为1000H的单元,1000H+i表示学号为i的学生成绩,编写程序能在2000H开始的区域排出名次表,2000H+i为学号i的学生的名次,并将其显示在屏幕上。
二.实验目的
进一步熟悉排序方法。
实验十 计算机钢琴的程序
一.实验要求
编写程序,程序运行时使PC机成为一架可自动弹奏的“钢琴”,循环演奏简单的乐曲,按任意键返回DOS。
二.实验目的
1. 掌握利用PC机场声器发出不同频率声音的方法。
2. 学习利用系统功能调用从表格上读取字符的方法。
三.实验说明
通过给8253定时器装入不同的计数值,可以使其输出不同频率的波形。当与门打开后,经过放大器放大的作用,便可驱动扬声器发出不同频率的音调,要使该音调的声音持续一段时间,只要插入一段延时程序,之后再将扬声器切断(关闭与门)即可。
另外,若要使计算机成为可直接演奏的钢琴,则需要使用系统调用的01H功能以接收键入字符,并且要建立一张表,使表上字符与频率值构成一个对应关系。
表上字符 1 2 3 4 5 6 7 8
音符 1 2 3 4 5 6 7 i
频率值 524 588 660 698 784 880 988 1048
第四章AEDK8688ET实验机模块原理
AEDK8688ET实验机主板由许多独立的硬件实验模块组成,用户可用它们组成各种各样的硬件实验。
板上的“?”型圆孔用来作为测试孔或用于连接硬导线,组成实验。学生在用硬导线组合实验时,一方面理解了实验模块的原理,另一方面也锻炼了动手能力。
本实验板主要包括频率源模块、存储器RAM模块、DMA模块、8255并行口模块、双色灯模块、单色灯模块、参考电压模块、键盘及显示模块(8279)、分频器模块、A/D转换模块、D/A转换模块、串行通讯8251模块、定时/计数器8253模块、8259中断控制器模块、8088CPU及监控模块、单脉冲触发模块和地址译码模块等20几个模块。
下面将详细地介绍各个模块的逻辑图及其功能与用途:
4.1 频率源电路
该电路对从8284的第5脚来的4.77MHz的频率进行分频以产生适合串行通讯波特率的频率以及供其它分频器和A/D转换器等电路使用的频率。
4.2 存储器模块
存储器使用一片62256(U41),在ISA总线方式下做RAM实验,其RAM地址空间为D0000H-D7FFFH,在单板方式和串行监控方式下(用的是实验机上的CPU),地址空间为80000H-87FFFH(注:00000-000FFH和80000-802FFH为系统保留区,用户不可随意占用)。做DMA实验和RAM实验时,注意板上短路套应套在正确位置(详细请参看《AEDK8688ET实验指导书》(教师/学生用)的说明)。
4.3 可编程并行口8255模块
8255地址是PA口CS+0H,PB口CS+1H,PC口CS+2H,命令控制口CS+3H,其中,CS为8255片选信号首地址,若CS=200H,则,PA口地址为200H,PB口地址为201H,PC口地址为202H,依次类推。在下面的模块中也是如此说明。该模块在实验中主要处理数据并行输入/输出,如开关量的输入;单色LED/双色LED的输出,键盘实验等。
4.4 双色LED灯模块
双色灯输入由8255来驱动,主要用来做模拟交通灯实验。
4.5 单色LED灯模块
单色LED灯输入DL1-DL8可由8255来驱动,用来完成单色灯实验。
4.6 参考电压
实验机出所时调定的参考电压是-VREF=-5.0V,+VREF=+5.0V。该基准电压供D/A,A/D等电路使用。
4.7 电位器
该模块主要为A/D转换提供模拟输入电压。
4.8分频器模块
将JP0插至RAM端,可以从Q0~Q15输出不同频率的时钟信号,可作为8253的输入时钟。本分频电路也用于DMA实验,为DMA实验提供地址信号(JP0插至DMA端)。
4.9 单脉冲电路
本电路在按下单脉冲触发按钮时可在两触发端分别产生正负跳变脉冲,用户可根据需要选择引出。
4.10 8279键盘及LED数码显示模块
本键盘显示电路模块的命令口地址为CS79+2,数据口地址为CS79。
4.11 步进电机驱动电路
该电路通过2003驱动步进电机,2003为达林顿晶体管,可以吸收200mA电流。步进电机脉冲信号可以由8255提供。
4.12 A/D转换器模块
0809各通道的口地址是CS+0H,CS+1H,CS+2H,CS+3H,CS+4H,CS+5H,CS+6H,CS+7H。用于A/D转换实验。
4.13 /A转换器模块
该电路可以用于做D/A转换实验和驱动直流电机实验。0832口地址为CS。
4.14 8251可编程串行通讯模块
这里用MAX232作输入、输出驱动,可与RS232兼容。其优点是,芯片内部有升压电路,只要单一+5V电源就可输出满足RS232要求的电平。8251的波特率由8284及74LS393分频后,通过波特率开关选择提供,一般选择波特率为9600。8251口基地址为CS51,命令口地址为CS51+2,数据口地址为CS51
4.15 可编程定时/计数器模块
本电路模块可用于产生定时中断,实现实时时钟实验等,具体接法请参照实验。本电路口地址为CS。
4.16 I/O译码电路
本电路模块为138译码电路,提供的I/O空间地址为200-23F。
4.17 8259中断控制器实验模块
本模块为8259中断实验模块,仅在单板机和串行监控方式下,做8259中断实验。
4.18 开关量输入实验模块
4.19 CPU和监控模块
该电路在串行监控方式、单板机方式下起作用。
4.20 (连接机电实验控制平台)专用插座
第五章 AEDK 8688ET实验机在串行监控配置方式下安装和启动
? 保证实验机J1插座上不连电缆,即此插座为空。J2-J3两插座之间用40芯短电缆连接。
? 跳线JP5插至右边AEDK端。
? JP4-JP4插至RAM侧,K11-K12拨至RAM侧。
? 用串行通讯电缆将PC机的串行通讯口(COM1或COM2)与实验机右边9芯插座J4连接起来。
? AEDK8688ET电源插座J5接上外接电源,电源开关拨至右端。
? 打开电源上电后,实验机数码管上将显示: AEDK8688
? 打开PC机,进入串行监控调试软件子目录下,运行LCA88ET.EXE,选择连机(PC机与实验机通讯选项)后,实验机数码管上显示:8688 2.1,表示连机成功。此时便可在串行监控方式下,加载.EXE文件到实验机上进行运行,并且可以设置断点,单步运行等操作
第六章 实验内容
一、主要仪器设备:
微型计算机(装有AEDK88ET软件),微机原理实验箱以及一跟串行口线。
二、实验方法:采用常用程序设计的基本方法,以及接口电路连接及编程方法。
三、实验报告要求:实验目的,实验要求,实验电路,程序流程图,资源分配,程序清单(附有注释),实验中遇到的问题及解决方案。
实验一 双色灯实验
一、 实验要求
编写程序,以8255为输出口,控制四个双色灯按ISA总线方式下的要求发光。
二、 实验目的
1.学习单板方式下扩展简单I/O接口的方法以及双色灯的使用。
2.进一步学习微处理器的编程技术。
三.实验电路连线将DG1~DG4,DR1~DR4用导线连至8255的PC0~PC7,8255的CS片选接至138译码处的200H~207H插孔。
四.实验说明
本实验要求8255工作于方式0,四个双色灯红绿交替闪亮。
实验二 开关状态显示实验
一.实验要求
编写程序,设定8255的PA口为开关量输入,PB口为开关量输出,要求能随时将PA口的开关状态通过PB口的发光二极管显示出来。
二.实验目的 学习使用8255各个口的不同工作方式
三.实验电路连线
将K1~K8用连线连至8255的PA0~PA7,将DL1~DL8用连线连至8255的PC0~PC7,8255CS用连线连至译码处的200~207这个插孔。
四.实验说明
本实验要求8255工作于方式0,PA口设置为输入,PC口设置为输出,输入量为开关量,通过8255可实时显示在LED灯上。按下HALT或RST键则返回监控。
实验三 定时器/计数器实验
一.实验要求
编程将8253定时器0设定为方式3,定时器1设定在方式2,定时器3设定在方式2,定时器0输出作为定时器1的输入,定时器1的输出作为定时器2的输入,定时器2的输出接在一个LED上,运行后可观察到该LED在不停闪烁。
二.实验目的
了解8253定时器的硬件连接方法及时序关系。掌握8253的各种模式编程及原理。
三.实验电路连线(此处省略了译码电路参看实验一或二)
GATE0~GATE2连至电源+5V,从f插孔用线连至CLK0,OUT0用线连至CLK1,OUT1用线连至CLK2,OUT2用线连至一个发光管(DL1),CS53片选孔用线连至译码处228~22F这个孔。(
8253中GATE0、GATE1、GATE2接+5V。
CLK0接波特率开关边的f插孔,CLK1接OUT0,CLK2接OUT1。
CS接200~207孔。
四.实验说明
8253的工作频率为0~2M HZ,所以输入的CLK频率必须在2MHZ以下。实验板上从波特率开关边上f插孔引至定时器0输入。
实验四 8259A硬件中断实验
一.实验要求
编写中断程序,在请求8259A中断1时,响应8259A的硬件中断,正常工作发光二极管能够显示为10101010,响应中断时能够显示1秒钟的11110000。
二.实验目的
1、 了解8259A中断控制器的工作原理。
2、 了解PC机中断的原理和过程。
3、 学会中断处理程序的编写。
三.实验电路及连线(此处省略了译码电路,8255及发光二极管的电路,参看实验二)
INT0接至+PLUSE,8259片选CS接至200H-207H,将DL1~DL8用连线连至8255的PC0~PC7,8255CS用连线连至译码处的200~207这个插孔。
四.实验说明
1、本实验只在串行监控方式和单板机方式下进行,在ISA总线方式下无法实现。就其原因是,在PC机总线槽中没有直接引出中断控制器8259的请求与应答信号,以及级连信号。
2、运行该实验程序的方法是:在串行监控方式下,先通过加载选项将8259A的初始化程序与中断处理程序送到RAM中。
3、本实验指导书只提供硬件中断0实验,中断方式为边沿触发、单片、全嵌套中断方式,且中断号从中断8开始。使用者可以根据自己的需要设定为其他中断方式,且中断号可以设定从任一中断号开始。
4、实验方法:以硬中断0为例,先加载8259A主中断程序(假定地址为8100:0),然后再加载中断程序IRQ0程序(假定地址为8200:0)。然后进入TALK WITH 88ET选项,在监控状态下键入:
# SW0:20回车
0000:0020 xxxx- 0000,
0000:0022 xxxx-8200 回车 注:横线上为键盘键入。
SW0:20回车即在段地址为0000,偏移地址为0020的单元写一个字,对于8259中断实验而言,就是要在000:0020~0000:0023四个存储单元中分别写进中断程序的偏址与段地址。注意要先写入偏移量,再写段地址。写好后可以用显示命令DW0:20查看这四个单元是否是刚才写进的中断程序的入口地址。最后在监控提示符#下键入G8100:0回车,执行8259A主程序即可。
这样设计的目的是为了让学生们更能理解中断的执行原理与过程。
实验五 A/D转换实验
一.实验要求
编程用查询方式采样电位器输入电压,并将采样到的结果实时地通过8279显示在数码管上。(只须显示一位即可。用0~F表示0~+5V电压)。
二.实验目的
1.掌握A/D芯片AD0809的转换性能及编程方法。
2.学习A/D芯片与其他芯片(如8279)接口的方法,初步建立系统的概念。
三.实验电路连线
CS79接译码处210~217这个插孔,A/D的CS插孔接译码处208~20F这个插孔, 0809的IN0接至电位器W1的中心抽头插孔。注意:电位器W1两边的两个插孔已经分别接好电源+5V和地,请不要再接,以防接错,出现短路。
四.实验说明
本实验中所用A/D转换芯片为逐次逼近型,精度为8位,每转换一次约100微秒,所以程序若为查询式,则在启动后要加适当延时。另外,0809芯片提供转换完成信号(EOC),利用此信号可实现中断采集。有兴趣者可自行编制程序。
五.实验程序框图 (略)
实验六 D/A转换实验
一.实验要求
编写程序,使D/A转换模块循环输出三角波和锯齿波。
二.实验目的
1.掌握DAC0832芯片的性能、使用方法及对应硬件电路。
2.了解D/A转换的基本原理
三.实验电路连线
DAC0832的片选CS孔接译码处228~22F插孔。
四.实验说明
D/A转换是把数字量转化成模拟量的过程,本实验输出为模拟电压信号,本次实验生成的波形较为简单,有兴趣者可试编程序生成各种波形,如方波,正弦波等,也可与键盘显示模块结合起来,构成一个简单的波形发生器,通过键盘输入各种参数,如频率,振幅(小于+5V),方波的占空比等。
五.实验程序框图 (略)
实验七 直流电机驱动实验
一、实验要求
利用0832D/A转换输出直流量,控制直流电机的转速。
二、实验目的
了解直流电机控制的基本方法。
三、实验电路及连线
用硬导线将0832片选信号CS接至138译码200-207,将8279的片选信号CS接至208-20F。
在运行过程中,可按动小键盘的“0─9”数码键,控制电机转速,按“REG”键退出程序。
四.实验说明
所用直流电机可以与我公司联系,我公司有售。我公司有机电实验平台,可以利用实验机上的J8插座的37芯与机电实验平台连接,实现温度、压力、步进电机、直流电机等实验。
五.实验程序框图 (略)
实验八 步进电机驱动实验
一、实验要求
利用8255的PC口PC0-PC3轮流输出脉冲序列,小键盘控制步进电机的转速和转动方向。
二、实验目的
1、 了解控制步进电机的基本原理。
2、 掌握控制步进电机转动的编程方法。
三、实验电路及连线
用硬导线将8255片选信号CS接至200-207,PC0-PC3接至SMA-SMD, SA-SD接至步进电机的四相输入端。将8279的片选信号CS接至208-20F。
在运行过程中,可按动小键盘的“0─9”数码键,控制步进电机的转速,按“+或-”键控制步进电机的方向,按“REG”键退出。
五.实验程序框图 (略)
看看
我要看
更多回帖