微型计算机原理与接口术(第5版)课程实验报告
微机原理与接口
实验报告
班 级: 自动化1班
学 号:
姓 名: 吴家辉
指导老师: 朱胜利
2016年01月12日
实验一 十进制数的BCD码相减运算
一、实验目的:熟悉微机对十进制数减法的运算方法。
二29、实验内容:
计算X-Y=Z,其中X、Y、Z为BCD码,设X,Y为40,12,则Z为28。
三、实验程序框图
四、实验步骤 ?
(1)在PC机和实验系统联机状态下,新建实验程序,编辑完成后进行保存(保存后缀为.asm文件)。再单击工具栏中编译装载,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“连续运行”或工具图标运行,即开始运行程序
⑵复位RST键,查看减法运算结果在4100H~4101H单元中,其内容应为08、02。
脱机模式:
⑴在P.态下,按SCAL键,输入2D80,按EXEC键。
⑵复位RST键,查看减法运算结果在4100H~4101H单元中,其内容应为08、02。
五、程序代码
data segment
org 4000h
xy db 00,04,02,01
z db 2 dup(0)
data ends
code segment
assume cs:code,ds:data
org 2ca0h
start: clc
mov ax,data
mov ds,ax
lea si,xy
lea di,z
mov cx,2
s: mov al,[si]
sub al,[si+2]
ass
pushf
and al,0fh
popf
mov [di],al
inc si
inc di
loop s
code ends
end start
六、实验结果
4005h、4006h单元内数据变为08、02。
实验二 8255A并行口实验
一、实验目的
掌握通过8255A并行口传输数据的方法,以控制发光二极管的亮与灭。
二、实验内容
用8255做输出口,控制十二个发光管亮灭,模拟交通灯管理。
三、实验接线图
图6-4
四、编程指南
⑴通过8255A控制发光二极管,PB4-PB7对应黄灯,PC0-PC3对应红灯,PC4-PC7对应绿灯, 以模拟交通路灯的管理。
⑵要完成本实验,必须先了解交通路灯的亮灭规律,设有一个十字路口l、3为南北方向,2、4为东西方向,初始状态为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车。延时一段时间后,l、3路口的绿灯熄灭,而l、3路口的黄灯开始闪烁,闪烁若干次以后,l、3路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车,延时一段时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到l、3路口方向,之后,重复上述过程。
⑶程序中设定好8255A的工作模式及三个端口均工作在方式0,并处于输出状态。
⑷各发光二极管共阳极,使其点亮应使8255A相应端口的位清0。
五、实验程序框图
六、实验步骤
(1)联机实验
①断电连接导线, 按图6-4连好实验线路,
8255A:PC0->L3,PC1->L6,PC2->L9,PC3->L12,PC4->L2,
PC5->L5,PC6->L8,PC7->L11;
PB4->L1,PB5->L4,PB6->L7,PB7->L10
②在PC机和实验系统联机状态下,新建实验程序,编辑完成后进行保存(保存后缀为.asm文件)
③编译下载
④全速运行,运行程序。
七、程序代码
assume cs:codesg
codesg segment
org 2ca0h
start: mov dx,0ff2bh
mov al,80h
out dx,al
s: mov dx,0ff29h
mov al,0ffh
out dx,al
mov dx,0ff2ah
mov al,0f0h
out dx,al
call delay1
call delay1
mov al,0f0h
out dx,al
mov cx,8
mov dx,0ff29h
l: mox al,0afh
out dx,al
call delay1
mov al,0ffh