微机原理实验指导书ok.doc
目 录目 录1第一章 实验系统安装和启动2一. AEDK 8688ET实验机在PC机ISA总线配置方式下安装和启动2二. AEDK8688ET实验机在独立运行单板机配置方式下安装和启动2三. AEDK 8688ET实验机在串行监控配置方式下安装和启动3实验一 两个多位十进制数相减实验4实验二 字符匹配程序5实验三 从键盘输入数据并显示6实验四 接收年.月.日信息显示7实验五 排序实验8第三章 硬 件 实 验 部 分9实验一 模拟交通灯实验9实验二 开关量输入实验11实验三 8279键盘显示实验13实验四 8259中断实验15实验五 8253定时/计数器实验17第一章 实验系统安装和启动AEDK8688ET可以工作于三种模式:ISA总线模式、串行监控模式和独立运行的单板机模式。在这一章中,将简单地描述一下这三种模式的配置。有关这三种工作模式配置方式的详细介绍,请参见AEDK8688ET实验机使用手册一书的第二章。一. AEDK 8688ET实验机在PC机ISA总线配置方式下安装和启动l 打开PC机机箱,在PC机ISA总线槽上插入缓冲驱动卡UPCXT1,将一根60芯扁平电缆(由两个30芯插头和一个60芯插头组成)的60芯插头接至缓冲驱动卡上,另一端(一个为30芯插头,另一个为32芯插头)插至AEDK8688ET实验机的J1插座(由一个30芯和一个32芯插座组成)上。保证J2-J3插座之间没有电缆连接。l 短路套JP5插至左边PC侧。l AEDK8688ET上方的电源开关K13拨到左端,使用外接电源,或拨到右端,用PC机提供电源。l 打开PC机电源,进入ISA总线调试软件的子目录下,运行EXP88ET.EXE,按下面提供的调试步骤进行调试。 . 编写源程序,编译排错。. 运行可执行程序。. 看程序结果,若有错则转修改源程序二. AEDK8688ET实验机在独立运行单板机配置方式下安装和启动 l 保证实验机J1插座不连接电缆,即此插座为空。J2、J3两插座之间用40芯短电缆连接。9芯插座J4不连接串行电缆,此插座为空。 l 跳线JP5跳向右边AEDK端。 l JP1JP4都插至RAM端。K11,K12拨至RAM侧。 l AEDK8688ET电源插座J5连上外接电源,(图1所示)并使电源开关拨至左端。另外,电源电缆线的标识为:黑为电线,蓝为+5V,白为+12V,棕色为-12V。l 打开电源,上电后,在实验机数码管上将显示:AEDK8688,表示键盘监控初始化成功。 l 按实验机小键盘上的任意键(RST键除外),在数码管上出现键盘监控提示符为“-”,即表示进入键盘监控状态。 l 按照AEDK8688ET实验机使用手册第六章的键盘监控命令,就可以做8088微处理器实验。图1 电源插座与插头三. AEDK 8688ET实验机在串行监控配置方式下安装和启动l 保证实验机J1插座上不连电缆,即此插座为空。J2-J3两插座之间用40芯短电缆连接。l 跳线JP5插至右边AEDK端。l JP4-JP4插至RAM侧,K11-K12拨至RAM侧。l 用串行通讯电缆将PC机的串行通讯口(COM1或COM2)与实验机右边9芯插座J4连接起来。l AEDK8688ET电源插座J5接上外接电源,电源开关拨至右端。l 打开电源上电后,实验机数码管上将显示: AEDK8688l 打开PC机,进入串行监控调试软件子目录下,运行U8688ET.EXE,选择连机(PC机与实验机通讯选项)后,实验机数码管上显示:8688 2.1,表示连机成功。此时便可在串行监控方式下,加载.EXE文件到实验机上进行运行,并且可以设置断点,单步运行等操作(具体操作请参照AEDK8688ET实验机使用手册第四章内容)。第二章 软 件 实 验 部 分实验一 两个多位十进制数相减实验一.实验要求将两个多位十进制数相减,要求被减数,减数均以ASCII码形式按顺序存放在以DATA1和DATA2为首的5个内存单元中(低位在前),结果送回DATA1处。二.实验目的1. 学习数据传送和算术运算指令的用法。2. 熟悉在PC机上建立、汇编、链接、调试和运行汇编语言程序的过程。三.实验程序框图实验二 字符匹配程序一.实验要求用串操作指令设计程序,实现在指定存储区6000:0-6000:100(长度为100H)中寻找匹配字符,遇空格字符(20H)结束,退出时给出是否找到的信息。二.实验目的掌握8088的串操作指令的使用方法。三.实验说明 1.8088中用于字符串检索的指令为SCASB/SCASW,用AL中的字节或者AX中的字与位于ES段由DI寄存器所批的内存单元的字节或字相比较。通过前缀的控制,可以实现在DI所指的字符串中,寻找第一个与AL(或AX)的内容相同(或不同)的字节(或字)。2. 对于所有串操作指令,都要注意方向标志的设置,指令CLD 使方向标志DF清0,SI和DI自动增量修改,指令STD使DF置1,SI和DI作自动减量修改。四.实验程序框图实验三 从键盘输入数据并显示一.实验要求编写程序,将键盘接收到的四位十六进制数转换为等值的二进制数,再显示在屏幕上。若输入的不是0-F间的数字,则显示出错信息,并要求重新输入。二.实验目的掌握接收键盘数据的方法,并了解将键盘数据显示时须转换为ASCII码的原理,并在程序中设置错误出口。三.实验程序框图实验四 接收年.月.日信息显示一.实验要求 显示输入提示信息并响铃一次,然后接收键盘输入的月/日/年信息,并显示。若输入月份日期不对,则显示错误提示并要求重新输入。二.实验目的掌握响铃符方法,掌握年、月、日输入方法。三.实验程序框图实验五 排序实验一.实验要求使用DEBUG程序,从首址为1000H的内存区开始存放50个数,要求设计程序将这些数由小到大排序,排序后的数,仍放在该区域中。二.实验目的掌握用汇编语言编写气泡排序程序的思路和方法。三.实验程序框图第三章 硬 件 实 验 部 分实验一 模拟交通灯实验一.实验要求编写程序,以8255作为输出口,控制4个双色LED灯(可发红,绿,黄光),模拟十字路口交通灯管理。二.实验目的 1.学习在PC机系统中扩展简单I/O接口的方法。 2.进一步学习编制数据输出程序的设计方法。 3.学习模拟交通灯控制的方法。4. 学习双色灯的使用。三.实验电路及连线PC0-PC3连DR1-DR4,PC4-PC7连DG1-DG4。CS55连218H-21FH孔。四.实验说明 1. 因为本实验是模拟交通灯控制实验,所以要先了解实际交通灯的变化规律。假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯。然后转状态1南北绿灯通车,东西红灯。过一段时间转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍然红灯。再转状态3,东西绿灯通车,南北红灯。过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯。最后循环至状态1。2. 双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。五.实验程序框图 由于各PC机速度不一样,可适当调节伪指令D1,D2的值,使实验效果更佳。实验二 开关量输入实验一.实验要求编写程序,通过8255的PC口读取开关状态,并在PC机屏幕上显示出来。二.实验目的进一步掌握8255并口芯片的编程以及通过8255读取开关量的方法。三.实验电路及连线 K1K8连PC0PC7。CS连21821F。四.实验程序框图实验三 8279键盘显示实验一. 实验要求利用8279键盘显示接口及板上提供的键盘和八位LED数码管,编写程序,在数码管上显示“AEDK8688”字样,按下实验机上任意键后,将键值显示在数码管上。按下结束键则返回DOS操作系统。二. 实验目的1. 熟悉并掌握系统中扩展8279键盘显示接口的方法。2. 掌握8279工作原理和编程的方法。三. 实验电路及连线8279的片选CS79连至210217,K10插上短路套。四. 实验说明 编程使8279工作在这样的状态:左边输入,八位显示,键盘外部译码,双键互锁。8279操作命令字较多,需灵活应用。五.实验程序框图:实验四 8259中断实验一.实验要求中断请求通过ISA 总线的IRQ2端输入,中断源可以是实验机上8253定时器输出的脉冲(用8253作中断源时,接线图参看实验七),也可以是其他脉冲信号。本实验用的是从单脉冲电路产生的脉冲信号作为中断源。编写程序,要求每次PC机响应外部中断时,显示字符串"A 8259A INTERRUPT!",中断十次后程序退出。二.实验目的掌握8259A中断控制器工作原理,熟悉实验中涉及到的中断屏蔽寄存器IMR和中断服务寄存器ISR等各寄存器的使用方法和中断处理程序的编写。三.实验电路及连线 +PULSE接至实验机IRQ2插孔(在JP1-JP5开关上面)。四.实验说明 1. 本实验使用PC机内的8259A芯片,主机启动时已将8259A中断控制寄存器IRQ2的中断号初始化为0AH。主机把IRQ2保留给用户使用,而其他外中断已由系统时钟、键盘等占用,因此,编程时要注意系统中已使用的中断请求号。只须将IMR寄存器中对应IRQ2的位清零,允许IRQ2中断即可。并请不要随意更改8259中断向量号。 2. 机内8259A初始化为普通结束方式,因此,外中断结束时,必须使用中断结束命令清除中断服务寄存器ISR中的对应位。 3. 程序退出时,关闭IRQ2中断,即给IMR中相应位置1,禁止中断。4. PC机中主片8259A地址: 偶地址 20h,奇地址 21h。5. 为了防止有些PC机中断2用作中断级联用,IRQ2中断实验可能不响应。这时,可以将中断2实验程序略加修改,写成中断IRQ5实验。五. 实验程序框图 实验五 8253定时/计数器实验一.实验要求编程将8253的定时器0设置为方式3(方波),定时器1设置为方式2(分频),定时器0输出的脉冲作为定时器1的时钟输入。定时器2设置为方式2(分频)。用示波器观察各对应引脚之间的波形关系。二.实验目的了解8253定时器的硬件连接方法及时序关系。掌握8253的各种模式的编程及其原理,用示波器观察各信号之间的时序关系。三.实验电路及连线 8253中GATE0、GATE1、GATE2接+5V。 CLK0接波特率开关边的f插孔,CLK1接OUT0,CLK2接OUT1。CS接200207孔。四.实验说明8253的工作频率是02MHz,所以输入的CLK频率必须在2MHz以下。实验板上的晶振是14.7456MHz,因此须经过8284和393分频后再作为8253的CLK输入(一般可将波特率开关拨至9600,然后从开关边上的f插孔引出)。运行本程序后,用示波器观察8253的OUT0、OUT1、OUT2脚上的输出波形。五.实验程序框图