第6章基本输入输出接口技术

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第6章基本输入输出接口技术6.1概述6.2输入/输出控制方式6.3I/O接口结构及特点6.4I/O接口读写技术本章主要目标重点掌握输入输出接口的实现、与总线的连接及其读写技术。6.1概述6.1.1输入/输出与输入/输出接口6.1.2I/O接口的功能6.13微处理器与I/O设备间的接口信息6.1.4I/O端口的编址方法6.1.5I/O组织6.1.1输入/输出与输入/输出接口输入/输出:微处理器与外部设备之间的信息交换。输入/输出接口:完成输入/输出任务的接口。包括:硬件接口电路和软件接口程序。6.1.1输入/输出与输入/输出接口结束6.1.2I/O接口的功能1.地址译码2.提供联络信号3.信号特性匹配(如电平转换)4.信息格式的转换(如正负逻辑的转换,串并格式,模数转换)5.数据缓冲与锁存6.对外设进行中断管理7.提供时序控制6.1.2I/O接口的功能结束6.1.3微处理器与I/O设备间的接口信息数据端口状态端口控制端口I/O设备数据缓冲器读/写控制逻辑译码CS微处理器DBusABusCBus数据控制状态I/O接口双向输入输出三种:数据信息、状态信息、控制信息这些信息均通过数据总线传输。6.1.3微处理器与I/O设备间的接口信息结束6.1.4I/O端口的编址方法1.存储器映射编址含义:I/O端口的地址与存储器的地址统一混合编址。用访问存储器的指令,即可对整个地址空间(存储器和I/O)进行访问,而无需专用I/O指令。优点:访问I/O指令多,使用方便。内存与外设地址分布相同。无需专用的I/O指令。6.1.4I/O端口的编址方法2.I/O映射编址含义:I/O端口与存储器分开独立编址,即I/O端口和存储器都有自己的一套地址空间,而且互不相干。优点:I/O设备不占用内存单元,节约了内存空间。指令执行速度快。80X86-PentiumX微机采用I/O映射的编址方法。I/O端口的地址64K个8位口地址(0000H-FFFFH)。6.1.4I/O端口的编址方法结束6.1.5I/O组织1.I/O组织形式基于8088的8位I/O组织基于8086和8028616位I/O组织基于80386和8048632位I/O组织基于Pentium~Pentium4的64位I/O组织8位I/O组织-基于808864K个I/OA15~A0D7~D0RDWRD7~D0A15~A0IORCIOWC系统总线16位I/O组织-基于8086-8028632K个I/OA15~A1D15~D0RDWRD7~D0A15~A1IORCIOWC系统总线32K个I/OA15~A1D7~D0RDWRBEBEA0BHED15~D8CS3A14~A2~D24CS3D7~D0CS3A14~A2~D24CS332位I/O组织-基于80386-8048616K个I/OA15~A2D31~D0RDWRD31~D24A13~A0IORCIOWCW系统总线16K个I/OA13~A0D23~D16RDWRBEBEBE316K个I/OOEWED15~D8A13~A016K个I/OA13~A0D7~D0OEWEBEBEBE2BE1BE064位I/O组织-基于Pentium-Pentium416K个I/O(3)A15~A3D63~D0RDWRD31~D24A12~A016K个I/O(2)A12~A0D23~D16RDWRBEBEBE316K个I/O(1)RDWRD15~D8A12~A016K个I/O(0)A12~A0D7~D0RDWRBEBEBE2BE1BE016K个I/O(7)A15~A3RDWRD63~D56A12~A0IORCIOWC16K个I/O(6)A12~A0D55~D48RDWRBEBE16K个I/O(5)RDWRD47~D40A12~A016K个I/O(4)A12~A0D39~D32RDWRBEBEBE7BE6BE5BE46.1.5I/O组织2.I/O端口的地址分配I/O地址范围0000H-FFFFH.共64K个8位端口从8086-Pentium4I/O地址采用A15-A0共16条地址线,且与存储器分开编址。系统板保留的1K个I/O端口000H-03FFH,共1K个8位端口(详见书P.219表6.1)系统板保留的1K地址I/O地址I/O设备端口I/O地址I/O设备端口0000-000FDMA控制器1200-207游戏口0020-0021中断控制器(主中断控制器)0274--0277ISA即插即用计数器0040-0043系统时钟278-27F并行打印机口0060键盘控制器控制状态口2F8-2FF串行通信口2(COM2)0061系统扬声器0376第二个IDE硬盘控制器0064键盘控制器数据口378-37F并行打印口10070-0071系统CMOS/实时钟3B0-03BBVGA显示适配器0081-0083DMA控制器103C0-03DFVGA显示适配器0087-DMA控制器103D0-03DF彩色显示器适配器0089-008BDMA控制器103F2-03F5软磁盘控制器00A0-00A1中断控制器(从中断控制器)03F6第一个硬盘控制器00C0-0DFDMA控制器203F8-03FF串行通信口1(COM1)00F0-00FF数值协处理器0170-0177H标准IDE/ESDI硬盘控制器01F0-01FF标准IDE/ESDI硬盘控制器没有指明的端口,用户可以使用。6.1.5I/O组织6.1概述结束6.2输入输出控制方式6.2.1直接程序控制方式6.2.2中断控制方式6.2.3DMA控制方式6.2.1直接程序控制方式含义:直接在程序控制下进行微处理器与外设之间的数据传送。分类:无条件传送方式和条件传送方式两种。1.无条件传送方式:含义:不查询外设状态而直接进行输入输出的一种方式。特点:简单、经济,但可靠性差。1.无条件传送方式:例:一个采用无条件传送方式的数据采集系统。这是一个16位精度的数据采集系统。被采集的数据是8个模拟量,由继电器绕组P0、P1、…P7分别控制触点K0、K1…K7逐个接通。每次采样用一个4位(十进制数)数字电压表测量,把被采样的模拟量转换成16位BCD代码,高8位和低8位通过两个不同的端口(其地址分别为10H和11H)输入。CPU通过端口20H输出控制信号,以控制某个继电器的吸合,实现采集不同通道的模拟量。1.无条件传送方式:8个模拟量16位精度的数据采集系统继电器绕组触点控制端口数据端口1.无条件传送方式:采集过程要求:(1)先断开所有的继电器线圈及触头,不采集数据。(2)延迟一段时间后,使K0闭合,采集第1个通道的模拟量,并保持一段时间,以使数字电压表能将模拟电压转换为16位BCD(3)分别将高8位与低8位BCD码存入内存,完成第1个(4)利用移位与循环实现8个模拟量的依次采集、输入与转存。1.无条件传送方式:数据采集程序:START:MOVDX,0100H;01H→DH,置吸合第1个继电器代码;00H→DL,LEABX,DSTORXORAL,AL;清AL及进位位CF1.无条件传送方式:AGAIN:MOVAL,DLOUT20H,ALCALLNEARDELAY1;模拟继电器触点的释放时间MOVAL,DHOUT20H,AL;先使P0CALLNEARDELAY2INAX,10HMOV[BX],AXINCBXINCBXRCLDH,1;DH左移(大循环)1位,为下一个触点吸合作准备JNCAGAIN;8位都输入完了吗?没有,则循环DONE:↙;输入已完,则执行别的程序段6.2.1直接程序控制方式READY=1?输入数据后续处理开始输入状态信息NY准备输出数据读状态口的状态BUSY=1?输出数据YN输入输出2.条件传送方式:含义:首先查询外设状态,满足条件时才进行数据的传送,因此也叫查询传送方式。特点:简单、可靠性高,但CPU效率低。2.条件传送方式首先读入状态信息然后读入数据同时设置状态/数据2.条件传送方式由于对应一个数据端口的状态信息通常只有是1位。所以,不同的数据端口可以使用同一个端口中不同的位作为其状态信息。查询式输入部分的程序:POLL:INAL,STATUS_PORTTESTAL,80H;设“准备就绪”(READY)信息在D7位JZPOLL;未“准备就绪”,则循环再查INAL,DATA_PORT;已“准备就绪”(READY=1),则读入数据2.条件传送方式首先读入状态信息然后写入数据和设置状态同时读取数据和设置状态2.条件传送方式查询式输出部分的程序:POLL:INAL,STATUS_PORT;查状态端口中的状态信息D7TESTAL,80HJNZPOLL;D7=1即忙线=1,则循环再查MOVAL,STORE;否则,外设空闲,则由内存读取数据OUTDATA_PORT,AL;输出到DATA地址端口单元其中,STATUS和DATA分别为状态端口和数据端口的符号地址;STORE为待输出数据的内存单元的符号地址。2.条件传送方式例:一个采用查询方式的数据采集系统8个输入模拟量,经过多路开关控制,每次输入一个模拟量至A/D转换器。A/D转换器由端口4输出的D4位控制启动与停止。A/D转换器的READY信号由端口2的D0输至CPU数据总线。A/D转换后的数据由端口3输入至数据总线。多路开关由端口4的D2-D03位二进制码控制(000-111分别对应于UA0-UA7)。2.条件传送方式控制端口状态端口数据端口控制A/D的启动与停止控制码2.条件传送方式采集过程要求:(1(2)先停止A/D转换;(3)启动A/D转换,查输入状态信息READY(4)当输入数据已转换完(READY=1,即准备就绪),则经由端口3输入至CPU的累加器AL中,并转送内(5)设置下一个内存单元与下一个输入通道,循环8次。2.条件传送方式数据采集过程的程序:START:MOVDL,0F8H;设置启动A/D转换的信号,且低3位选通多路开关通道MOVAX,SEGDSTORMOVES,AXLEADI,DSTOR2.条件传送方式AGAIN:MOVAL,DLANDAL,0EFH;使D4=0OUT04,AL;停止A/D转换CALLDELAY;等待停止A/DMOVAL,DLOUT04,AL;选输入通道并启动A/DPOLL:INAL,02SHRAL,1;查AL的D0JNCPOLL;判READY=1?若D0=0INAL,03;若已准备就绪,则经端口3将采样数据输入至ALSTOSBINCDL;输入模拟量通道增1JNZAGAIN;8↙;输入完毕,则执行别的程序6.2.1直接程序控制方式结束6.2.2中断控制方式含义:在满足传输条件时,外设向CPU发请求传输的中断信号,CPU接收请求后进入服务程序,在中断服务程序中进行输入输出操作。特点:无需查询等待,CPU利用率大大提高。不足:中断控制方式仍需要一系列本与输入输出无关的操作(如压栈保护等),因此对于高速I/O设备效率仍不算快。6.2.2中断控制方式结束6.2.3DMA控制方式含义:直接由DMA控制器硬件控制数据传输,传输过程无需CPU干预。特点:速度快(因为有DMA硬件直接控制),效率高。外设/内存DMA方式与其它方式比较CPUDMA控制器内存/外设外设/内存MOV[XX],ALOUTDX,ALINAL,DXMOVAL,[XX]无需CPU指令内存/外设DMA方式输出单个数据示例HRQHLDA地址线HOLDHLDA地址总线数据总线地址总线数据总线控制总线I/O设备接口部分内存DMA控制器CPU及总线控制逻辑接口准备好发DMA请求(1)(2)DMA总线请求(3)总线允许(4)DMA送地址地址至总线(5)请求确认(6)内存数据至总线(7)接口锁存数据(8)撤消总线请求(9)CPU收回总线控制权6.2.3DMA控制方式6.2输入输出控制方式结束6.3I/O接口的基本结构及特点数据总线地址总线地址总线缓冲器及译码器联络信号控制逻辑数据总线缓冲器驱动器允许输出状态或数据输入命令或数据输出读状态寄存器读输入寄存

1 / 60
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功