微机实验一到八答案(6)

2020-02-21 22:23

答:AD0是片选端,作为8086访问奇偶地址单元的判别端

(4)图5-1中6264的外部地址从8000H开始,编程时应该怎么写?此时仿真时U4 O7引脚为什么出现高电平

代码如下:

ORG 0100H

MOV CX,0064H ;循环100次 MOV DX,0000H ;置初值 MOV BX,8001H ; MOV AX,0000H

MOV DS,AX ;DS置零 SIM:

MOV [BX],DL INC DL INC BX LOOP SIM

INT 3H ;停止在INT 3H

U4 O7端属于使能端,当它为高电平时才能正常工作

(5)如果6264的外部地址从C000H开始,图中应作哪些修改? 答:若外部地址从C000H开始,则A15A16A17A18为1100,对CBA=111 111B=7,所以图中芯片74LS138中的输出端口应接在Y7.

实验七8255 并行I/O 扩展实验(一)

一、实验要求

利用8255 可编程并行口芯片,实现输入、输出实验,实验中用8255PA 口作读取开关状态输入,8255PB 口作控制发光二极管输出

二、实验目的

1、了解8255 芯片结构及编程方法。 2、了解8255 输入、输出实验方法。

三、实验电路及连线

图6-1 8255 并行I/O 扩展实验Proteus 实验电路

四、实验说明

1、8255A芯片简介:8255A可编程外围接口芯片是INTEL公司生产的通用并行接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:

方式0:基本输入/ 输出方式 方式l:选通输入/ 输出方式 方式2:双向选通工作方式

2、使8255A端口A工作在方式0并作为输入口,读取Kl-K8个开关量,PB口工作在方式0作为输出口。

五、实验程序流程图

图6-2实验程序流程图 其程序代码为:

读PA口 开始 初始化8255,设置工作方式 置PB口 CODE SEGMENT

ASSUME CS:CODE

IOCON EQU 8006H ;控制端口地址 IOA EQU 8000H ;端口A地址

IOB EQU 8002H ;端口B地址 IOC EQU 8004H ;端口C地址 START:

MOV AL,90H ;设置A口为输入,B口为输出,10010000B MOV DX,IOCON OUT DX,AL

NOP ;空指令,用于延时 STAR1:

NOP NOP

MOV AL,0 MOV DX,IOA

IN AL,DX ;将A口的状态存入AL之中 NOP NOP

MOV DX,IOB

OUT DX,AL ;将AL的状态输出到IOB口中 JMP STAR1 CODE ENDS

END START

六、思考题

(1) 如果使8255 的A口为输出,B口为输入,应该怎样修改程序? 答:代码修改:将代码中的第8行MOV AL,90H改为MOV AL,82H;

第16行改为MOV DX,IOB;第20行代码改为MOV DX,IOA即可

电路修改:将A口和B口的电路元件互换即可。

(2) 如果修改8255的地址为6000H~60006H,应如何修改电路和程序? 答:电路图修改如下:

代码修改只需修改第03行~第06行即可,其余不用修改:

03. 04. 05.

06.

IOCON EQU 6006H IOA EQU 6000H IOB EQU 6002H IOC EQU 6004H

(3) 如何修改程序,使得显示灯不需要拨动,也能自动亮灭? 其代码如下:

STACK1 SEGMENT STACK DW 256 DUP(?) STACK1 ENDS CODE SEGMENT

ASSUME CS:CODE IOCON EQU 8006H IOA EQU 8000H IOB EQU 8002H IOC EQU 8004H

START:

MOV AL,80H ;设置A口为输出,B口为输出 MOV DX,IOCON ;定义8255工作方式 OUT DX,AL MOV DX,IOB

STAR1: MOV AL,0 OUT DX,AL CALL DALLY

MOV AL,0FFH MOV DX,IOB

OUT DX,AL ;将AL的状态输出到IOB口中 JMP STAR1

DALLY PROC NEAR ;软件延时子程序 PUSH CX PUSH AX

MOV CX,0FH

D1: MOV AX,0FH ;该值不能太大,否则在proteus中看结果很慢 D2: DEC AX JNZ D2

LOOP D1 POP AX POP CX RET

DALLY ENDP CODE END

END START

(4) 流水灯显示实验。编写程序,使8255 的A 口和B 口均为输出,实现

16 位数据灯的相对循环显示。

电路图修改如下:

其代码修改如下:

IOY0 EQU 8000H ;#####对应8255的片选IOY0端口地址 MY8255_A EQU IOY0+00H*2 ;8255的A口地址 MY8255_B EQU IOY0+01H*2 ;8255的B口地址 MY8255_C EQU IOY0+02H*2 ;8255的C口地址

MY8255_MODE EQU IOY0+03H*2 ;8255的控制寄存器地址

STACK1 SEGMENT STACK DW 256 DUP(?) STACK1 ENDS

DATA SEGMENT

LA DB 0 ;定义数据变量 LB DB 0 DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA START: MOV AX,DATA


微机实验一到八答案(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《概率论与数理统计(本科)》复习题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: