预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共92页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第七章基本输入输出接口第一节微型计算机接口概述一、输入输出接口功能描述二、I/O指令及其执行过程2、I/O指令的执行过程浮空数据输出2、I/O接口编址方式三、输入输出端口地址译码FFFF FFFD FFFB 0003 00018086CPU中8位与16位I/O端口的译码。 例:设两个输出端口地址为0FEH~0FFH,设计其输出电路。 执行:OUT0FEH,AL时,AL内容送74LS374#1 执行:OUT0FFH,AL时,AL内容送74LS374#2 执行:OUT0FEH,AX时,AL内容送74LS74#1,AH内 容送74LS74#2。 需要注意的是,执行OUT0FFH,AL指令时,AL内容是由CPU数据总线的D15~D8送出。74LS374#1第二节8086/8088CPU与外设间数据交换方式第二节8086/8088CPU与外设间数据交换方式1.无条件传送方式无条件传送方式的输入输出原理2.条件传送方式(查询方式)(1)查询式输入查询输入方式的基本程序(2)查询式输出查询输出方式的基本程序三DMA(直接存储器存取)方式二、中断控制I/O方式第三节82C55并行I/O接口(3)外部特性(4)命令字与初始化编程 将命令字写入命令口,芯片内部逻辑解释命令字后即可规定芯片功能; 正常操作芯片前一般要求初始化芯片。一、82C55内部结构一、82C55内部结构2.内部逻辑内部逻辑包括A组和B组控制电路。这是两组根据CPU的命令字控制82C55工作方式的电路。每组控制电路从读/写控制逻辑接受各种命令,从内部数据总线接收控制字并发出适当的命令到各自相应的端口二、82C55外部特性A0和A1——芯片内部寄存器地址选择信号,当有效时,82C55被选中,再由A0、A1的编码决定是选端口A、B、C还是控制寄存器。 ——读信号,输入,低电平有效。为低电平时,82C55内部A、B和C可输出到数据引脚D7~D0。 ——写信号,输入,低电平有效。为低电平时,数据引脚D7~D0上的数据或命令被82C55读入。 82C55的操作逻辑。如下表。82C55操作逻辑真值表3.82C55的初始化编程举例例2:端口C的PC0位要求清0,则控制字为00000000B,即00H;而端口C的PC7位要求置1,则控制字为00001111B(0FH)。设82C55的控制寄存器的端口地址为PORT_CON,则下面的程序段可实现PC7输出高电平,PC0输出低电平。 MOVDX,PORT_CON;控制口地址送DX MOVAL,0FH;PC7置1控制字 OUTDX,AL;PC7置1操作 MOVAL,00H;PC0清0控制字 OUTDX,AL;PC0清0操作四、82C55工作方式0五、方式0输入时的等效模型六、方式0输出时的等效模型方式0应用举例82C55与8086的连接电路数码管显示器驱动电路(选共阴极数码管)显示控制程序 moval,10000000B ;初始化字 movdx,0fffeh outdx,al ;输出初始化字 la0: movcx,8 ;显示8位 leasi,table ;表首址Data segment table db40H,79H,24H, ;定义段显示码表 pos db0feh ;显示位置码 Data ends code segment assumecs:code,ds,data dis procfar start:pushds xorax,ax pushax movax,data movds,ax moval,10000000B ;初始化字 movdx,0fffeh outdx,al ;输出初始化字 la0: movcx,8 ;显示8位 leasi,table ;表首址 movbl,pos la1: moval,[si] movdx,0fff8h outdx,al ;A口输出段选码 movdx,0fffah moval,bl outdx,al ;B口输出位选码 incsi rolbl,1 calldelay ;显示延时 loopla1 ret dis endp code ends endstart工作方式1方式1输入的有关控制信号方式1输入的有关控制信号方式1输入的有关控制信号方式1输入时的状态字方式1输入的工作时序方式1输出的有关控制信号方式1输出的有关控制信号方式1输出的有关控制信号方式1输出的工作时序工作方式2应用举例软件设计(1)A机发送程序 MOVDX,303H;82C55命令口 MOVAL,10100000B OUTDX,AL;写工作方式字 MOVAX,030H MOVES,AX;建立数据块的段基址 MOVBX,00;数据块的偏移地址 MOVCX,