下载

1下载券

加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 第四章 输入与输出(IO)接口

第四章 输入与输出(IO)接口.ppt

第四章 输入与输出(IO)接口

yayan
2011-06-26 0人阅读 举报 0 0 暂无简介

简介:本文档为《第四章 输入与输出(IO)接口ppt》,可适用于高等教育领域

第四章输入与输出(IO)接口第四章输入与输出(IO)接口IO接口基础C的功能和结构CPPIUART本章学习目标本章学习目标IO接口的基本概念C的结构、功能和应用程序C的结构、功能和应用程序串行通信及RS接口标准的结构、功能和应用程序IO接口基础IO接口基础接口是介于主机和外设之间的缓冲电路和相应软件。IO接口的功能包括数据缓冲、接收和执行CPU的命令、信号转换、设备选择、中断管理、数据宽带交换和可编程等。CPU接口外设常见接口插槽IO接口基础CPU对IO端口的编址方式分为端口统一编址和端口独立编址。IO接口基础C的功能和结构C的功能和结构C的功能()计数。有个独立的计数器通道每个可按二进制或BCD码进行计数工作方式有种。()定时。提供的时间基准。C的功能和结构C的功能和结构C的结构C的功能和结构C的功能和结构C的四个端口选择计数器内部结构图计数器内部结构图控制字寄存器控制逻辑状态锁存状态寄存器CRmCRl计数部件CEOLmOLlCLKnGATEnOUTn内部总线控制字寄存器控制逻辑CRlCRm计数部件CEOLlOLm状态寄存器状态锁存C控制字C控制字控制字()写工作方式控制字()设置计数初值例:MOVAL,BCNT,先低后高字节,方式,BCDOUTH,ALMOVAX,H计数初值为OUTH,ALMOVAL,AHOUTHALMOVALBCNT,只低字节,方式,二进制OUTHALOUTHH计数初值为H()注意:()每个使用的CNT均要初始化()计数初值的设置与CNT的CLK密切相关()计数初值的设置方法由控制字决定。CNT初始化当前计数值的读取()读取当前计数值方法工作方式控制字(AA=)DD=~DD=(a)锁存当前计数值或禁止计数(b)读取当前计数值例:MOVALBCNT,锁存先低后高字节,方式,BCDOUTHALINALHMOVAHALINALHXCHGAHALAX为TC当前计数值()读取当前计数值方法使用读回命令当前计数值的读取特点:控制字同时只能锁存单个通道读回命令可同时锁存多个通道。功能选择:锁存状态-DD=锁存计数值-DD=锁存状态与计数值-DD=。(先读状态再读计数值)例:MOVALBCNT,锁存计数值OUTHALINALHMOVAHALINALHXCHGAHALAX为当前计数值MOVALBCNT、CNT锁存计数值OUTHALINALHMOVAHALINALHXCHGAHALAX为CNT当前计数值INALHMOVAHALINALHXCHGAHALAX为CNT当前计数值状态寄存器例:MOVALBCNT,锁存状态值OUTHALINALH若AL=表示CNT为方式,BCD码先低后高读写当前OUT为低电平MOVALBCNT,锁存状态值OUTHALINALH若AL=表示TC为方式二进制码只有低字节当前OUT为低电平C工作方式C工作方式工作方式与时序(方式、方式)写CWCLKCR→CECR→CECR写写工作方式与时序(方式、方式)写CRCR→CECR→CECR写写CW工作方式与时序(方式、方式)方式:方式:OUTCLKGATE写CW写CRCR→CECR→CECR写GATEEVENODDGATECR→CE写写OUT工作方式与时序(方式、方式)方式:方式:软件启动:GATE=软件启动。硬件启动:写计数值后GATE↑启动。自动重计数。连续工作:每(N)CLK减到时输出CLK低电平。GATE=停止计数GATE↑后下一个CLK重计数。改变计数值是计数到有效或GATE触发有效。两种启动自动重计数。偶计数:N高N低。奇计数:(N)高(N)低当OUT=GATE=OUT↑停止计数GATE↑后下一个CLK重计数。改变计数值是计数到有效或GATE触发有效。C读写操作C读写操作()C写操作•先写控制字后写计数值•控制字确定写低高位然后送计数初始值低高位•位数先低后高•在计数过程中可按控制字重写计数值•计数值CRCECE减•初始化顺序灵活先写个CNT的控制字再写个CNT的计数值写一个CNT的控制字再写该CNT的计数值所有计数器初始化下一CLK↓再下一CLK↓C读写操作C读写操作()C读操作•只能读计数值不能读控制字•按控制字格式读位计数值先低后高读•先停止计数后用IN读GATE=或停止CLK输入•先锁存计数值后用IN读方式控制字SCSCRWRWMMMBCDxxxxH、H、H锁存CNT、CNT、CNT计数值用IN读。读回命令C工作方式比较C工作方式比较典型计数器定时器比较典型计数器定时器比较可编程定时器计数器的应用可编程定时器计数器的应用在系统中的连接初始化编程对CNT初始化MOVAL,HCNT控制字OUTH,AL写入控制字寄存器MOVAL,计数器初值为OUTH,AL写入初值低位OUTH,AL写入初值高位CNT初始化MOVAL,HCNT控制字OUTH,ALMOVAL,计数器初值OUTH,AL对应usCNT初始化并让扬声器发声MOVAL,BHCNT控制字OUTH,ALMOVAX,H计数器初值OUTH,ALMOVAL,AH对应Hz的发声频率OUTH,ALINAL,H取PB口MOVAH,AL保护ORAL,设PB=PB=OUTAH,AL使扬声器发声…MOVAL,AH恢复PB口OUTH,AL应用举例分频器设计用(地址H~H)将MHz的脉冲变为Hz的脉冲。初值=fCLKfOUT=×>怎么办?需要个CNT级联CNT采用方式产生连续分频方波做CNT的CLKCNT采用方式产生Hz脉冲。两个CNT的GATE统一控制。应用举例MOVALBTCOUTHALMOVAX,HOUTHALMOVAL,AHOUTHALMOVALBTCMOVAX,HOUTHALMOVAL,AHOUTHAL应用举例应用举例某产品的包装流水线中一个包装箱能装罐饮料。装箱时希望流水线上每通过罐饮料流水线要停秒以等待包装箱封口然后继续通过下一箱的罐。流水线就是这样周而复始的运作。试利用一片来完成流水线控制中的定时和计数功能。假设的端口地址为CH~FH采用的时钟频率是KHz。包装流水线控制思路:用的计数通道作为计数器用于个罐的计数计数通道作为定时器定时为S。当计数通道的OUT脚出现到的跳变的时候将启动计数通道开始定时而计数通道定时阶段将控制计数通道停止计数只有其定时结束并停止定时阶段才可再次启动计数通道开始计数。计数通道工作在方式计数初值计数通道工作在方式计数初值初始化程序计数通道初始化MOVAL,BOUTFH,ALMOVAL,OUTDH,AL初始化计数通道MOVAL,BOUTF,ALMOVAX,OUTEH,ALMOVAL,AHOUTEH,ALCPPICPPI的功能和结构C端口的选择C端口的选择控制字及工作方式控制字及工作方式、控制字()方式控制字控制字及工作方式控制字及工作方式()C口位设置字控制字及工作方式控制字及工作方式、工作方式()方式直接IO方式状态驱动IO接口仅IO、无联络信号。个位端口个位端口任一端口都可IO输入输出输出有锁存输入缓冲不能同时IO。()方式选通IO方式中断驱动IO接口A组:PA~PA数据PC~PC控制B组:PB~PB数据PC~PC控制PC~PC方式的IO控制字及工作方式控制字及工作方式①方式输入控制字及工作方式控制字及工作方式②方式输出控制字及工作方式控制字及工作方式()方式A口双向选通传送IO口均锁存中断和查询方式。A口双向PC~PC作联络PC~PC方式的IO或B口方式联络A口方式时B组可以工作于方式PB~PB、PC~PC作IOB组可以工作于方式的IOPC~PC作联络信号C的三个端口、三种工作方式可以相互组合其数据输入、输出以及控制联络信号如下。C的三个端口、三种工作方式可以相互组合其数据输入、输出以及控制联络信号如下。C的状态字C的状态字C通过读端口C的状态可以了解个端口在三种不同的工作方式下的状态如同工作方式的组合一样工作状态也是组合的。CA的应用举例CA的应用举例以甲乙两台微机并行通信为例。双方端口地址设定为:H~H,发送、接受数据长度为KB数据存放起点甲机为::H乙机为::H。MOVDX,HMOVAL,BOUTDX,ALMOVAL,DHOUTDX,ALMOVAX,HMOVES,AXMOVBX,HMOVCX,FFHMOVDX,HMOVAL,ES:BXOUTDX,ALINCBXDECCXL:MOVDX,HINAL,DXANDAL,HJZLMOVDX,HMOVAL,ES:BXOUTDX,ALINCBXDECCXJNZLMOVAX,CHINTH甲机发送程序乙机接收程序MOVDX,HMOVAL,BOUTDX,ALMOVAL,HOUTDX,ALMOVAX,HMOVES,AXMOVBX,HMOVCX,FFHL:MOVDX,HINAL,DXANDAL,HJNZLMOVDX,HINAL,DXMOVES:BX,ALMOVDX,HMOVAL,HOUTDX,ALNOPNOPMOVAL,HOUTDX,ALINCBXDECCXJNZLMOVAX,CHINTHUARTUART串行通信是将数据的各个位一位一位地通过单条位宽的传输线按顺序分时传送即通信双方一次传输一个二进制位。串行通信与并行通信是两种基本的数据通信方式。发送方在发送前要将并行数据转成串行数据接收方接收后要完成串行数据到并行数据的转换。串行通信概述同步通信与异步通信()异步串行通信•发收双方允许没有共同时钟,但频率必须一致,双方同步方法是在字符格式中设置起始位和停止位,称为起止同步控制方式。•以字符作为数据传输单位,字符间是异步的,同一字符内是同步的。•传输格式•ASYNCASYNChronousCommunications同步通信与异步通信()同步串行通信•发收双方使用同一时钟源同步字符间和字符内各位用同步字符或同步信号进行同步:软件和硬件同步方式。•面向字符的通信规程BSCBinarySynchronousCommunicationIBM字符流BISYNBinarySYNchronousCommunicationIBMSYNCSYNCSOH标题STX数据块ETBETXCRCCRC同步字符序始符文始符组终符文终符数据透明:能将特殊字符当作数据字符处理利用~个转义字符DLE(DataLinkEscape)同步通信与异步通信()同步串行通信(续)•面向比特的通信规程位流SDLCSynchronousDataLinkControlIBMHDLCHighLevelDataLinkControlISOADCCPAdvancedDataCommunicationsProcedureANSIA场C场I场FC场标志地址控制信息CRCCRC标志没有传输控制字符用某些比特组合来实现传输控制每帧数据可以是任意位即不是字符的整数倍。“”比特的插入删除技术异常结束字符同步通信与异步通信工作方式工作方式单工(Simplex)单向传送发收固定半双工(Half-duplex)单线非同时双向全双工(Full-duplex)双线同时双向ABBABA基波传输和载波传输基波传输和载波传输基波传输利用数字信号直接进行近距离传输。由于线路电阻、电感、电容、漏电电导及漏感分布参数的影响矩形波会发生畸变和延迟所以基带传输速率与距离成反比关系。载波传输利用调制器可以将数字信号调制成模拟信号能够进行远距离传输然后再用解调器把模拟信号变换为数字信号。调制常用的方法有调幅、调频和调相利用幅移键控ASK、频移键控FSK和相移键控PSK使正弦波的幅值、频率和相位随着数字信号和变化。数据传输速率和调制速率数据传输速率和调制速率数字传输率又称比特率为单位时间内传送的二进制位数单位是bs用C表示。调制速率又称波特率为单位时间内信号(或线路)状态变化数量单位是baud用B表示。当用N表示调制信号(或线路)状态数比特率与波特率的关系为C=BlogN。若单位时间内调制或解调个信号(种状态)则两种速率在数值上是相等的。调制个信号种状态:Log=C=B调制个信号种状态:C=BLog=BExample:C=bsB=÷=baud信道复用时分多路复用TDM(TimeDivisionMultiplexing)就是将一条物理传输线路按时间分成若干时间片轮换地为多个信号所占用每个时间片由复用的一个信号占用。频分多路复用FDM(FrequencyDivisionMultiplexing)就是利用频率调制原理将要同时传送的多个信号进行频谱搬移使它们互不重叠地占据信道频带的不同频率段然后经发送器从同一信道上同时或不同时地发送出去。计算机串行数据通信及其接口中使用时分多路复用系统。信道复用RS串行接口标准(EIA)RS串行接口标准(EIA)•RS是与CCITT的V系列建议基本相似的数据终端设备DTE和数据通信设备DCE之间的接口。•按位串行传输的机械、电气、功能和规程特性。•DTE与DCE之间的接口(Computer与Modem)机械规程•RS使用针D型插头座DB。•其它使用DB或DB的插头座可用连接器转换。功能特性功能特性•主信道线辅信道及未定义线•如P表引脚,,,,,,,,,,用于异步通信电气特性电气特性输入输出•RS按负逻辑工作逻辑为V或V到V之间的任一电压逻辑为V或V到V之间的任一电压。RS使用的EIA电平与计算机使用的TTL电平需要用集成电路芯片或分立元件电路进行转换。规程特性和连接方式规程特性和连接方式()计算机通过RS接口与Modem连接规程特性和连接方式()两台DTE设备的正规连接规程特性和连接方式规程特性和连接方式()两台DTE设备的简单连接规程特性和连接方式的结构及功能的结构及功能的引脚除Vcc和GND外,其他信号可分成对系统和对通信设备的内部结构的内部结构通过跳线COM:FH~FFH、IRQ(如INTCH)选择串口COM:FH~FFH、IRQ(如INTBH)的内部寄存器及编程的内部寄存器及编程()线路控制与状态①LCR串行通信数据格式WR的内部寄存器及编程的内部寄存器及编程②LSR串行数据收发状态RW(D除外)的内部寄存器及编程的内部寄存器及编程()波特率控制除数=工作频率×波特率=MHz×波特率见对照表置LCR←↓(FH)←除数高位↓(FH)←除数低位↓设置LSR(DLAB=)的内部寄存器及编程的内部寄存器及编程()Modem控制与状态①MCRW的内部寄存器及编程的内部寄存器及编程在回送方式下的发送、接收和Modem的中断仍然工作但Modem中断源为MCR低位、非状态输入端并受IER控制。改变MCR低位可产生Modem变化中断。中断系统测试方法:向LSR低位、MSR低位写入适当值(写)中断允许时可产生中断。Loop方式返回正常工作时重新编程并将MCR置成全。的内部寄存器及编程的内部寄存器及编程②MSRRW的内部寄存器及编程的内部寄存器及编程①IERDLAB=WR()中断允许与标识的内部寄存器及编程的内部寄存器及编程②IIRR①RBR、RSRDLAB=只读SIN停止奇偶数据起始RSR奇偶校验RBRCPULSRDR=IER=INTRPT=LSRDR=DDDD为MCROUT=IF=()数据收发数据数据②THR、TSRDLAB=只写数据数据停止奇偶数据起始THRE=THRE=IF=IRE=MCROUT=INTRPT=MSB→DDDDDDDD←LSB串行发送第位数据CPUTHRTSRSOUT()数据收发()初始化()初始化①测试适配器存在?IIR高位为全。②设置波特率除数:LCRDLAB=DLL和DLM。③设置通道线路控制:LCRDLAB=LCR各位。④设置Modem控制:MCR中DTR、RTS、OUT、OUT(中断输出)LOOP。⑤设置中断允许:LCRDLAB=IER。()采用中断方式的异步通信驱动程序编程要点修改中断向量表中COMCOM对应的CHDH的向量指向中断程序初始化:置IER相应位MCROUT=→=→WPRPT信号能送到的IR或IR根据通信规程设置数据帧格式根据波特率设置分频除数开放异步中断:清除OCW中的D或D位允许IR或IR上请求①中断初始化②中断主程序(根据应用自行编制)③中断子程序•辨别发生中断的中断源:读IIR根据其中DDD和状态转入相应子程序。•中断处理:IIR的DDD表示ID、ID、IP当DDD=接收数据出错读LSR中DDDD判断是间断还是何种错误转相应处理子程序。DDD=接收数据就绪从RBR中读数据存接收缓冲区。DDD=发送保持寄存器空从发送缓冲区取数据送THR。DDD=Modem状态变化读MSR中DDDD判断是哪些Modem引脚改变了状态转相应处理子程序。判断有无尚未处理的中断请求:每种中断源的中断处理完之后再次读取IIR的DDD位D=根据DD转入相应子程序若D=说明所有中断处理结束对发EOI命令返回被中断的程序。③中断子程序的编程的编程两台微机通过各自的异步通信口COM按三线连接法通信通信波特率为。、初始化程序MOVDX,FBHMOVAL,HOUTDX,ALMOVDX,FHMOVAL,OUTDX,ALMOVDX,FHMOVAL,HOUTDX,ALMOVDX,FBHMOVAL,AH数据长位个停OUTDX,AL止位。偶校验MOVDX,FCHMOVAL,HOUTDX,ALMOVDX,FHMOVAL,OUTDX,AL、通信工作程序用查询方式进行通信KEEPTRY:MOVDX,FDHINAL,DXTESTAL,EHJNZERRORROUTINETESTAL,JNZRECEIVETESTAL,HJZKEEPTRYMOVDX,FHMOVAL,CLOUTDX,ALJMPSHORTKEEPTRYRECEIVE:MOVDX,FHINAL,DX、综合举例在IBMPC机上按查询方式编写发送程序按中断方式编写接收程序。该程序能连续符号“*”从串口COM发送出去并在CRT上显示同时能把从串口COM上接收到的字符显示在CRT上显示出错标志“#”START:CLIMOVAX,MOVES,AXMOVDI,*MOVAX,OFFSETPRINTCLDSTOSWMOVAX,CSSTOSWINAL,HANDAL,EFHOUTH,ALMOVDX,FHMOVAL,CHOUTDX,ALMOVAL,OUTDX,ALMOVAL,BHMOVDX,FHOUTDX,ALMOVDX,FCHMOVAL,BHOUTDX,ALMOVDX,FHMOVAL,HOUTDX,ALSTITR:MOVDX,FDHINAL,DXTESTAL,HJZTRMOVAL,‘*’MOVDX,FHOUTDX,ALMOVAH,MOVDL,ALINTHJMPTRRINTPROCSTIPUSHDXPUSHAXMOVDX,FDHINAL,DXTESTAL,EHJNZRERRMOVDX,FHINAL,DXMOVDL,ALMOVAH,INTHREND:MOVAL,HOUTH,ALPOPAXPOPDXIRETPERR:MOVDX,FHINAL,DXMOVDL,’#’MOVAH,INTHJMPRENDRINTENDP作业题作业题教材页:。

VIP免券下载文档

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/79

第四章 输入与输出(IO)接口

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利