📄 微机原理实验内容.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0038)http://home.jznu.net/lbnet/sy/synr.htm -->
<HTML><HEAD><TITLE>微机原理实验内容</TITLE>
<META http-equiv=Content-Language content=zh-cn>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2600.0" name=GENERATOR>
<META content=FrontPage.Editor.Document name=ProgId></HEAD>
<BODY>
<P style="MARGIN-BOTTOM: 15px" align=left><FONT face=幼圆
size=4>
<A name=top></A>《微机原理》实验内容</FONT></P>
<TABLE width="100%" border=0>
<TBODY>
<TR>
<TD width="33%"><A href="http://home.jznu.net/lbnet/sy/synr.htm#1a">实验一
简单输入、输出实验</A></TD>
<TD width="33%"><A
href="http://home.jznu.net/lbnet/sy/synr.htm#2">实验五<FONT size=1>
</FONT>8253定时器实验</A></TD></TR>
<TR>
<TD width="33%"><A href="http://home.jznu.net/lbnet/sy/synr.htm#1b">实验二
软件延时实验</A></TD>
<TD width="33%"><A
href="http://home.jznu.net/lbnet/sy/synr.htm#5">实验六<FONT size=1>
</FONT>LED显示实验</A></TD></TR>
<TR>
<TD width="33%"><A href="http://home.jznu.net/lbnet/sy/synr.htm#8">实验三
软件延时模拟路口交通灯控制</A></TD>
<TD width="33%"><A
href="http://home.jznu.net/lbnet/sy/synr.htm#6">实验七 定时器LED显示综合实验</A></TD></TR>
<TR>
<TD width="33%"><A
href="http://home.jznu.net/lbnet/sy/synr.htm#3a">实验四<FONT size=1>
</FONT>LED简单显示实验</A></TD>
<TD width="33%"><A
href="http://home.jznu.net/lbnet/sy/synr.htm#7">实验八 模拟交通灯显示综合实验</A></TD></TR></TBODY></TABLE>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left>-----------------------------------------------------------------</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align=left> </P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align=center><IMG height=450
src="微机原理实验内容_files/图1.bmp" width=780 border=0></P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align=center> </P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align=center>实验单板机结构原理图</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left>----------------------------------------------------------------<BR>
<A name=1a></A>实验一
简单输入、输出实验<BR> 硬件连线:8个开关与74LS244的SI相连,地址译码输出CS0与74LS244的片选CS相连;<BR>
8个发光二极管与74LS273的SO相连,地址译码输出CS1与74LS273的片选CS相连<BR> 实验效果:开关输入微机,然后输出控制二极管发光。<BR> 地址译码:CS0为04A0H,CS1为04B0H<BR>----------------------------------------------------------------<BR>汇编程序:<BR>;=====================================================================<BR>;<BR>;
This program input from port(04A0H),then output to
port(04B0H)<BR>;<BR>;=====================================================================<BR>
assume cs:code<BR>code segment public<BR> org 100h<BR>start:
mov dx,04a0h ;input port
address<BR> in
al,dx<BR> mov
dx,04b0h ;output port
address<BR> out
dx,al<BR> jmp
start ;cycle<BR>code
ends<BR> end start<BR> <A
name=1b></A>
<A
href="http://home.jznu.net/lbnet/sy/synr.htm#top">返回目录</A><BR>---------------------------------------------------------------------<BR>
实验二 软件延时实验<BR> 硬件连线:
同实验一<BR> 实验效果:
软件延时控制发光二极管闪亮<BR>---------------------------------------------------------------------<BR>汇编程序:<BR>;===========================================================<BR>;<BR>;
This program use software delay show flash
LED<BR>;<BR>;===========================================================<BR>
assume cs:code<BR>code segment public<BR> org 100h<BR>start:
mov dx,04b0h ;output port
address<BR> mov
al,0aah ;10101010B or
0ffh:11111111B<BR> out
dx,al
;light<BR> mov
cx,0ffffh ;soft delay<BR>wait1:
nop<BR> loop
wait1<BR> mov
al,0 ;black : no
light<BR> out
dx,al<BR> mov
cx,0ffffh ;soft delay<BR>wait2:
nop<BR> loop
wait2<BR> jmp
start ;cycle<BR>code
ends<BR> end start</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align=left> </P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left>!设计实验1:用软件延时让二极管依次循环发亮,每次亮一个。</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left>!设计实验2:两个二极管发亮,各向相反的方向循环移动,依次发亮。</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left>!设计实验3:两个二极管发亮,各向相反的方向循环移动,依次发亮,移动速度不同。</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> <A
name=8></A>
<A href="http://home.jznu.net/lbnet/sy/synr.htm#top">返回目录</A></P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left>---------------------------------------------------------------------<BR>
实验三 软件延时实验模拟路口交通灯控制<BR> 硬件连线:
同实验一<BR> 实验效果: 软件延时控制A路口红灯、B路口绿灯亮5秒;</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left>
然后A路口不变、B路口绿灯闪3下、然后B路口黄灯亮;</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left>
再变为A路口绿灯、B红灯延时3秒;</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left>
然后A路口绿灯闪3下、再黄灯亮、B不变。再循环……<BR>---------------------------------------------------------------------<BR>汇编程序:<BR>;=====================================================================<BR>;<BR>;
This program use software delay to simulate traffic control
light<BR>;<BR>;=====================================================================<BR>
assume cs:code<BR>code segment public<BR> org
100h<BR>start:mov dx,04b0h ;output port
address<BR>again:mov al,21h
;100001B<BR> out
dx,al ;light</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> mov cx,10</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align=left>ared:call delay1</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> loop ared</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> mov cx,3</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align=left>aflash:mov al,1</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> out dx,al</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> call delay1</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> mov al,21h</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> out dx,al</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> call delay1</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> loop aflash</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> mov al,9</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> out dx,al</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> call delay1</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> mov al,12h</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> out dx,al</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> mov cx,6</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align=left>bred:call delay1</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> loop bred</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> mov cx,3</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align=left>bflash:mov al,2</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> out dx,al</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> call delay1</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> mov al,12h</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> out dx,al</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> call delay1</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> loop bflash</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> mov al,6</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> out dx,al</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> call delay1</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> jmp again <BR>delay1
proc</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> push cx</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> mov
cx,0ffffh ;soft delay<BR>wait1:
nop<BR> loop wait1</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> pop cx</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> ret</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align=left>delay1 endp<BR>code
ends<BR> end start</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px" align=left> </P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left>!设计实验:进一步加上开关控制:K1=0时正常工作、K1=1时A、B全为红灯。</P>
<P style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px"
align=left> <A
name=3a></A>
<A
href="http://home.jznu.net/lbnet/sy/synr.htm#top">返回目录</A><BR>-------------------------------------------------------------------<BR>
实验四
LED简单显示实验<BR> 硬件连接: 无<BR> 实验效果:
LED显示数字8,软件延时控制8移位显示<BR>-------------------------------------------------------------------<BR>汇编程序:<BR>;=============================================================<BR>;<BR>;
This program show '8' in each LED
roundly<BR>;<BR>;=============================================================<BR>con8279
equ 0492h<BR>dat8279 equ 0490h<BR> assume
cs:code<BR>code segment
public<BR> org 100h<BR>start: jmp
start1<BR>disbuf db 6 dup(0)<BR>start1:mov di,offset
disbuf<BR> mov cx,6<BR>kplay1:mov byte ptr
es:[di],0<BR> inc
di<BR> loop
kplay1<BR> mov di,offset
disbuf<BR> mov byte ptr
es:[di],7fh<BR>kplay2:call disply<BR> call
rdisp<BR> call
dislay<BR> jmp kplay2<BR><BR>dislay:mov
bx,2eeeh<BR>disla2:dec bx<BR> jnz
disla2<BR> mov
ax,0c2h<BR> mov
dx,con8279<BR> out
dx,ax<BR> ret<BR><BR>rdisp: mov di,offset
disbuf<BR> mov
al,es:[di]<BR> mov
cx,5<BR> inc di<BR>rdisp1:mov
ah,es:[di]<BR> dec
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -