1、微机原理实验报告宣城校区实 验 报 告课 程 名 称 _专 业 班 级 _学生姓名及学号 _指 导 教 师 _实 验 地 点 2015 2016 学年第 二 学期微机原理与接口技术实验一(1)实验名称存贮器内部数据传送姓 名系院专业电子信息类班 级学号实验日期2016.6.14指导教师成绩一、实验目的和要求 1、初步掌握星研集成环境工具软件的使用方法。2、掌握存储器内部不同位置间数据传送的方法。3、认真预习本节实验内容,尝试自行编写程序,填写实验报告。二、实验内容(包括实验步骤和代码)1、编写源程序,要求将数据段中3000H30FFH 单元的内容传送给6000H60FFH 单元中。2、编译、连
2、接所编写的源程序。3、执行程序前,利用存贮器窗口将DS:3000H300FH 中的数据改为11、22、33、44、55、66、77、88、99、AA、BB、CC、DD、EE、FF、00,存贮器窗口支持数据的直接修改功能,在相对应的地址中直接输入数据即可。4、进入调试状态后,分别以“全速运行”、“全速断点”、“单步”、“单步进入”等方式运行程序,同时在工作区窗口的CommonRegister 视图中查看本程序所使用的寄存器(CX、DI、SI)内容的变化。5、在如下图所示的存贮器窗口中检查程序运行结果是否正确。程序如下:.MODEL TINY ;memory mode : tiny.STACK 1
3、00 ;堆栈.CODE ;开始程序段START: MOV AX,DATAMOV DS,AXMOV ES,AXNOPMOV CX,100HMOV SI,3000HMOV DI,6000HCLDREPE MOVSBMOV CX,100HMOV SI,3000HMOV DI,6000HREPE CMPSBJNE ERRORTRUE: JMP $ERROR: JMP $END START三、实验结果及其分析1、通过该实验,成功地将数据段中3000H30FFH 单元的内容传送到了6000H60FFH 单元中。微机原理与接口技术实验一(2)实验名称数据传送(存贮器)姓 名系院专业电子信息类班 级学号实验日
4、期2016.6.14指导教师成绩一、实验目的和要求 1、了解静态存贮器的特性、扩展方法,掌握存贮器的读写时序。2、掌握CPU 对16 位静态存贮器的访问方法3、认真预习本节实验内容,尝试自行编写程序,填写实验报告。二、实验内容(包括实验步骤和代码)1、实验仪选用常用的静态存贮器芯片62256(32K8 位),二片组成32K16位,共64K 字节。实验仪具有16 位数据总线D0.D15、20 位地址线A0.A19、BLE(低电平有效,选择低8 位存贮器芯片)、BHE(低电平有效,选择高8 位存贮器芯片);BLE、BHE 同时有效,对存贮器字方式读写,BLE 或BHE 有效,对存贮器字节方式读写。
5、扩展16 位存贮器时,不使用地址线A0。2、编写程序:将B4 区的静态存贮器3000H-30FFH 单元中数据复制到6000H-60FFH 的单元中,并校验,检测写入的数据是否正确。3、连接线路验证功能,熟悉它的使用方法。实验原理图:连线说明:程序如下:.MODEL TINY ;memory mode : tiny.STACK 100 ;堆栈.CODE ;开始程序段START: MOV AX,8000HMOV DS,AXMOV ES,AXNOPMOV CX,100HMOV SI,3000HMOV DI,6000HCALL MoveMOV CX,100HMOV SI,3000HMOV DI,60
6、00HCLDREPE CMPSBJNE ERRORTRUE: JMP $ERROR: JMP $Move PROC NEARCLDCMP SI,DIJZ ReturnJNB Move1ADD SI,CX DEC SI ADD DI,CXDEC DISTDMove1: REP MOVSBReturn: RETMove ENDPEND START三、实验结果及其分析1、通过该实验,成功地将数据段中3000H30FFH 单元的内容传送到了6000H60FFH 单元中。2、子程序Move 中为什么比较SI、DI:源数据块与目标范围有可能部分重叠,需要考虑从第一个字节开始复制(顺序复制),还是从最后一个
7、字节开始复制(倒序复制)。3、本实验与实验一(1)的异同点:实验一(一)和实验一(二)都是将3000H中的内容复制到6000H中,而实验一(一)用的是模拟寄存器,里面的内容全是00,实验一(二)中寄存器内是有实际的值的。微机原理与接口技术实验二(1)实验名称8259A 中断控制器实验姓 名 系院专业电子信息类班 级学号实验日期2016.6.14指导教师成绩一、实验目的和要求 1、了解8259A 的内部结构、工作原理;了解8259A 与8086 的接口逻辑;掌握对8259A 的初始化编程方法,了解8086 是如何响应中断、退出中断的。2、复习本节实验内容,可尝试自行编写程序,做好实验准备工作,填
8、写实验报告。二、实验内容(包括实验步骤和代码)编制程序:拨动单脉冲开关,将单脉冲送给8259A 的IR0,触发中断,8086 计数中断次数,显示于F5 区的数码管上。实验原理图:连线说明:运行程序后,上下拨动单脉冲开关,拨动二次,产生一个“ ”,观察结果,数码管上显示的次数与拨动开关次数是否对应。程序如下:.MODEL TINY EXTRN InitKeyDisplay:NEAR,Display8:NEAR IO8259_0 EQU 0250HIO8259_1 EQU 0251H.STACK 100.DATABUFFER DB 8 DUP(?)Counter DB ?ReDisplayFlag
9、 DB 0 .CODESTART: MOV AX,DATAMOV DS,AXMOV ES,AXNOPCALL InitKeyDisplay ;对键盘、数码管控制器8255初始化CALL Init8259CALL WriIntverMOV Counter,0 ;中断次数MOV ReDisplayFlag,1 ;需要显示STI ;开中断START1: LEA SI,BufferCALL Display8CMP ReDisplayFlag,0JZ START1CALL LedDisplayMOV ReDisplayFlag,0JMP START1Init8259 PROC NEARMOV DX,IO
10、8259_0MOV AL,13HOUT DX,ALMOV DX,IO8259_1MOV AL,08HOUT DX,ALMOV AL,09HOUT DX,ALMOV AL,0FEHOUT DX,ALRETInit8259 ENDPWriIntver PROC NEARPUSH ESMOV AX,0MOV ES,AXMOV DI,20HLEA AX,INT_0STOSWMOV AX,CSSTOSWPOP ESRETWriIntver ENDPLedDisplay PROC NEARMOV AL,CounterMOV AH,ALAND AL,0FHMOV Buffer,ALAND AH,0F0HRO
11、R AH,4 MOV Buffer + 1,AHMOV Buffer + 2,10H ;高六位不需要显示MOV Buffer + 3,10HMOV Buffer + 4,10HMOV Buffer + 5,10HMOV Buffer + 6,10HMOV Buffer + 7,10HRETLedDisplay ENDPINT_0: PUSH DXPUSH AXMOV AL,CounterADD AL,1DAAMOV Counter,ALMOV ReDisplayFlag,1MOV DX,IO8259_0MOV AL,20HOUT DX,ALPOP AXPOP DXIRETEND START三、
12、实验结果及其分析1、通过该实验,观察数码管数字随开关拨动的变化,了解了8259A 的内部结构、工作原理;了解了8259A 与8086 的接口逻辑;掌握了对8259A 的初始化编程方法,了解了8086 是如何响应中断、退出中断的。微机原理与接口技术实验二(2)实验名称8259A 中断(优先级)实验姓 名系院专业电子信息类班 级学号实验日期2016.6.14指导教师成绩一、实验目的和要求 1、了解8259A 的内部结构、工作原理;了解8259A 与8086 的接口逻辑;掌握对8259A 的初始化编程方法,了解8086 是如何响应中断、退出中断的;体会8259A 的中断优先级处理方法。2、复习本节实
13、验内容,可尝试自行编写程序,做好实验准备工作,填写实验报告。二、实验内容(包括实验步骤和代码)编制程序:拨动单脉冲开关,向上的脉冲送给8259A 的IR0,向下的脉冲送给8259A 的IR7,F5 区的最左边数码管对应IR7 中断:没有触发中断或中断处理完毕,显示“0”,正在响应中断,显示“1”;F5 区的最右边数码管对应IR0 中断:没有触发中断或中断处理完毕,显示“0”,正在响应中断,显示“1”,如果IR0 中断IR7,显示“2”。实验原理图:连线说明:运行程序并拨动单脉冲开关,向上的脉冲送给8259A 的IR0,向下的脉冲送给8259A 的IR7,F5 区的最左边数码管对应IR7 中断:
14、没有触发中断或中断处理完毕,显示“0”,正在响应中断,显示“1”;F5 区的最右边数码管对应IR0 中断:没有触发中断或中断处理完毕,显示“0”,正在响应中断,显示“1”,如果IR0 中断IR7,显示“2”。程序如下:.MODEL TINY EXTRN InitKeyDisplay:NEAR,Display8:NEAR IO8259_0 EQU 0250HIO8259_1 EQU 0251H.STACK 100.DATABUFFER DB 8 DUP(?)IRQ0_INT DB 0IRQ7_INT DB 0.CODESTART: MOV AX,DATAMOV DS,AXMOV ES,AXNOP
15、CALL InitKeyDisplay ;对键盘、数码管扫描控制器8255初始化MOV IRQ0_INT,00HMOV IRQ7_INT,00HCALL Init8259CALL WriIntverCALL LedDisplaySTI ;开中断START1: LEA SI,BufferCALL Display8JMP START1LedDisplay PROC NEARPUSH AXMOV AL,IRQ0_INTOR AL,IRQ0_INTJZ LedDisplay1ADD AL,IRQ7_INT ;如果CPU正在处理IR7,显示2LedDisplay1: MOV buffer, AL ; ;
16、显示1或2,IR0在中断MOV Buffer + 1,10HMOV Buffer + 2,10HMOV Buffer + 3,10HMOV Buffer + 4,10HMOV Buffer + 5,10HMOV Buffer + 6,10H MOV AL,IRQ7_INTMOV Buffer + 7,AL ;显示1,IR7在中断POP AXRETLedDisplay ENDPInit8259 PROC NEARMOV DX,IO8259_0MOV AL,13HOUT DX,ALMOV DX,IO8259_1MOV AL,08HOUT DX,ALMOV AL,09HOUT DX,ALMOV AL
17、,7EHOUT DX,ALRETInit8259 ENDPDELAY PROC NEARPUSH SIPUSH CXPUSH AXMOV CX,100A3: LEA SI,BUFFERCALL DISPLAY8LOOP A3POP AXPOP CXPOP SIRETDELAY ENDPIRQ0: PUSH DXPUSH AXINC IRQ0_INT ;显示1,IR0在中断CALL LedDisplaySTICALL DELAYDEC IRQ0_INT ;显示0,IR0中断处理完毕CALL LedDisplayMOV DX,IO8259_0MOV AL,20HOUT DX,ALPOP AXPOP
18、 DXIRETIRQ7: PUSH DXPUSH AXINC IRQ7_INT ;显示1,IR7在中断CALL LedDisplaySTICALL DELAYDEC IRQ7_INT ;显示0,IR7中断处理完毕CALL LedDisplayMOV DX,IO8259_0MOV AL,20HOUT DX,ALPOP AXPOP DXIRETWriIntver PROC NEARPUSH ESMOV AX,0MOV ES,AXMOV DI,20HLEA AX,IRQ0STOSWMOV AX,CSSTOSWMOV DI,20H+7*4LEA AX,IRQ7STOSWMOV AX,CSSTOSWPO
19、P ESRETWriIntver ENDPEND START三、实验结果及其分析1、通过该实验, 观察数码管数字的变化,了解了8259A 的内部结构、工作原理;了解了8259A 与8086 的接口逻辑;掌握了对8259A 的初始化编程方法,了解了8086 是如何响应中断、退出中断的;掌握了8259A 的中断优先级处理方法。微机原理与接口技术实验二(3)实验名称8253 方波实验姓 名系院专业电子信息类班 级学号实验日期2016.6.14指导教师成绩一、实验目的和要求 1、了解8253 的内部结构、工作原理;了解8253 与8086 的接口逻辑;熟悉8253 的控制寄存器和初始化编程方法,熟悉8
20、253 的6 种工作模式。二、实验内容(包括实验步骤和代码)1、编写程序:使用8253 的计数器0 和计数器1 实现对输入时钟频率的两级分频,得到一个周期为1 秒的方波,用此方波控制蜂鸣器,发出报警信号,也可以将输入脚接到逻辑笔上来检验程序是否正确。2、连接线路,验证8253 的功能,熟悉它的使用方法。实验原理图:连线说明:测试实验结果:蜂鸣器发出时有时无的声音;用逻辑笔测试蜂鸣器的输入端口,红绿灯交替点亮。程序如下:.MODEL TINYCOM_ADDR EQU 0263HT0_ADDR EQU 0260HT1_ADDR EQU 0261H.STACK 100.CODESTART: MOV
21、DX,COM_ADDRMOV AL,35HOUT DX,AL ;计数器T0设置在模式2状态,BCD码计数MOV DX,T0_ADDRMOV AL,00HOUT DX,ALMOV AL,10HOUT DX,AL ;CLK0/1000MOV DX,COM_ADDRMOV AL,77HOUT DX,AL ;计数器T1为模式3状态,输出方波,BCD码计数MOV DX,T1_ADDRMOV AL,00HOUT DX,ALMOV AL,10HOUT DX,AL ;CLK1/1000JMP $ ;OUT1输出1S的方波END START三、实验结果及其分析1、通过该实验,观察逻辑笔红绿灯交替闪亮,了解了82
22、53 的内部结构、工作原理;了解了8253 与8086 的接口逻辑;熟悉了8253 的控制寄存器和初始化编程方法,熟悉了8253 的6 种工作模式。微机原理与接口技术实验三(一)实验名称数据传送(存贮器)姓 名系院专业电子信息类班 级学号实验日期2016.6.14指导教师成绩一、实验目的和要求 1、了解8255 芯片的工作原理,熟悉其初始化编程方法以及输入、输出程序设计技巧。学会使用8255 并行接口芯片实现各种控制功能,如本实验(控制交通灯)等。2、熟悉8255 内部结构和与8086 的接口逻辑,熟悉8255 芯片的3 种工作方式以及控制字格式。二、实验内容(包括实验步骤和代码)1、编写程序
23、:使用8255 的PA0.2、PA4.6 控制LED 指示灯,实现交通灯功能。2、连接线路验证8255 的功能,熟悉它的使用方法。实验原理图:连线说明:观察实验结果,是否能看到模拟的交通灯控制过程程序如下:.MODEL TINY COM_ADD EQU 0273HPA_ADD EQU 0270HPB_ADD EQU 0271HPC_ADD EQU 0272H.STACK 100 .DATA LED_Data DB 10111110B ;东西绿灯,南北红灯DB 10111111B ;东西绿灯闪烁,南北红灯DB 10111101B ;东西黄灯亮,南北红灯DB 11101011B ;东西红灯,南北绿
24、灯DB 11111011B ;东西红灯,南北绿灯闪烁DB 11011011B ;东西红灯,南北黄灯亮.CODE START: MOV AX,DATAMOV DS,AXNOPMOV DX,COM_ADDMOV AL,80H ;PA、PB、PC为基本输出模式OUT DX,ALMOV DX,PA_ADD ;灯全熄灭MOV AL,0FFHOUT DX,ALLEA BX,LED_Data START1: MOV AL,0XLATOUT DX,AL ;东西绿灯,南北红灯CALL DL5SMOV CX,6START2: MOV AL,1XLAT OUT DX,AL ;东西绿灯闪烁,南北红灯CALL DL50
25、0msMOV AL,0XLATOUT DX,ALCALL DL500msLOOP START2MOV AL,2 ;东西黄灯亮,南北红灯XLATOUT DX,ALCALL DL3SMOV AL,3 ;东西红灯,南北绿灯XLATOUT DX,AL CALL DL5SMOV CX,6START3: MOV AL,4 ;东西红灯,南北绿灯闪烁XLATOUT DX,ALCALL DL500msMOV AL,3XLATOUT DX,ALCALL DL500msLOOP START3MOV AL,5 ;东西红灯,南北黄灯亮XLATOUT DX,ALCALL DL3SJMP START1 DL500ms PR
26、OC NEARPUSH CXMOV CX,60000DL500ms1: LOOP DL500ms1POP CXRETDL500ms ENDPDL3S PROC NEARPUSH CXMOV CX,6DL3S1: CALL DL500msLOOP DL3S1POP CXRETENDPDL5S PROC NEARPUSH CXMOV CX,10DL5S1: CALL DL500msLOOP DL5S1POP CXRETENDPEND START 三、实验结果及其分析1、通过该实验,成功地观察到了模拟的交通灯控制过程,并了解了8255 芯片的工作原理,熟悉了其初始化编程方法以及输入、输出程序设计技巧;学会了使用8255 并行接口芯片实现各种控制功能。2、了解了8255 内部结构和与8086 的接口逻辑,掌握了8255 芯片的3 种工作方式以及控制字格式。微机原理与接口技术实验三(2)实验名称8255 键盘显示实验姓 名系院专业电子信息类班 级学号实验日期2016.6.14指导教师成绩一、实验目的和要求 1、进一步掌握8255 的设计、编程方法;2、掌握矩阵键盘的扫描方法;3、掌握动态扫描数码块的方法。二、实验内容(包括实验步骤和代码)1、编写程序:扫描键盘,如有按键,键号显示于数码管。2、连接线路,验证8255 的功能,熟悉它的使用方法。实验原理图:连线说明:程序如下:.MODEL
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2