接口作业及参考答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作业1(总线)
1.1 总线的三个基本特征是什么?
1.2 简述微型计算机发展过程中I/O总线的演变过程。
1.3 在Intel 8086处理器执行以下指令
MOV AL, 80
OUT 19, AL
画出在执行OUT指令时的ISA总线时序,并标明数据总线和地址总线的具体值。1.4 在8086系统通过ISA总线在地址F0000处扩展存储器,使用8片AMIC 623308构
成64KB存储器,在课件基础上设计。
作业1答案
1.1 标准的、公共的、通用的
1.2 第一代(8086/80286时期)是ISA单总线。
第二代(386/486时期)是ISA +新的32位总线(主要有MAC、EIAS和VL-Bus)。
第三代(Pentium初期和中期)是ISA+PCI模式的双总线结构。
第四代(Intel 处理器LGA775封装开始)是PCI+PCI Express模式的双总线结构。
1.3
数据有效=01010000B,地址有效=0000 0000 0001 0011B
1.4 8片存储器芯片的A0~A12、DQ0~DQ7、WE、OE、VDD和GND全部对接,CE
分别接到U4(74HC138)的8 个输出端,U6(74HC245)的OE端和DIR端接法:
作业2(定时器)
2.1 设计电路,将8253接到ISA 总线,基地址为FFF0H 。(注:不需要双向缓冲器74HC245)
2.2 使用定时器实现延时50ms 。假设可以选择使用的时钟有1KHz 、10KHz 、100KHz 和1MHz ,定时器芯片基地址为200H 。设计连接并写出汇编代码。
2.3
定时器时钟为1MHz ,芯片基地址为200H 。采用两个定时器通道级联实现1s 周期方波脉冲输出。写出汇编代码。
作业2答案
2.1 设计电路:
A0~A12
8253
2.2 使用定时器实现延时50ms。假设可以选择使用的时钟有1KHz、10KHz、100KHz和
1MHz,定时器芯片基地址为200H。设计连接并写出汇编代码。
选择定时器通道1的0方式,计数初值50,1KHz接到CLK1,GATE1接到+5V。初始化代码:
MOV DX, 203H
MOV AL, 01010000B ; 通道1,低字节有效,0方式,二进制计数
OUT DX, AL
MOV DX, 201H
MOV AL, 50
OUT DX, AL
2.3
;------------------初始化通道1为2方式,双字节,初值62500,二进制计数
MOV DX, 203H
MOV AL, 01110100B
OUT DX, AL
MOV DX, 201H
MOV AX, 62500
OUT DX, AL
MOV AL, AH
OUT DX, AL
;------------------初始化通道2为3方式,低字节,初值16,二进制计数
MOV DX, 203H
MOV AL, 10010110B
OUT DX, AL
MOV DX, 202H
MOV AX, 16
OUT DX, AL
作业3(中断)
3.1 使用一个定时器通道,将1MHz时钟脉冲分频为500Hz。将500Hz分频输出作为中
断申请信号连接到中断控制器,在中断服务程序实现二次计数,产生1秒事件,在显示器验证结果。
建议:使用8253通道1,2方式,定时器片选接200H;中断输入采用MIR5;显示器采用LCD,通过INT 21H的02号系统调用,每一秒在LCD屏幕上显示一个点。
作业3答案
3.1 汇编代码分为主程序和中断服务程序两部分。完整的程序如下
; 主程序代码================================================ .MODEL SMALL
.386
.STACK 128
TIMER = 200H
CODE SEGMENT
ASSUME CS:CODE
;------------------初始化定时器1为2方式,产生2ms周期性中断begin: MOV DX, TIMER+3
MOV AL, 01110100B
OUT DX, AL
MOV DX, TIMER+1
MOV AX, 20000 ; 输入1MHz,输出50Hz
OUT DX, AL
MOV AL, AH
OUT DX, AL
;-------------------设置中断向量
PUSH DS ; 保存DS
XOR AX, AX ; 0→AX
MOV DS, AX ; →DS
LEA AX, CS:MIR5p ; 中断服务入口地址偏移量→AX
MOV DS:[00D4H], AX ; →[00D4H]
MOV AX, CS ; 中断服务入口地址段值→AX
MOV DS:[00D6H], AX ; →[00D6H]
POP DS ; 恢复DS
;-------------------设置中断屏蔽寄存器
IN AL, 21H
AND AL, 0DFH
OUT 21H, AL
;-------------------打开中断
STI
MOV CX, 0
mloop: JMP mloop
; 中断服务程序代码============================================ MIR5p PROC FAR
PUSH AX ; 保存寄存器
PUSH DX
CLI ; 关闭中断
INC CX
.IF CX==50
MOV CX, 0
MOV DL, '.'
MOV AH, 2
INT 21H
.ENDIF
MOV AL, 20H ; OCW2:普通EOI命令
OUT 20H, AL ; 发送到主片
STI ; 开放中断]
POP DX
POP AX ; 恢复寄存器
IRET ; 从中断服务返回
MIR5p ENDP
CODE ENDS
END begin
作业4(USB)
4.1 USB有哪4种传输模式?在实际应用中有什么不同特点?USB低速、全速和高速模