版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
并行接口与串行接口第1页,课件共94页,创作于2023年2月9.1并行接口概述9.1.1并行接口的特点9.1.2并行接口的类型第2页,课件共94页,创作于2023年2月9.1.1并行接口的特点1.并行接口是在多根数据线上以数据字节或字为单位与I/O设备或被控对象传输数据。2.并行接口适用于近距离数据传输。一次同时传送多位数据,传送速度快。3.在并行接口中,8位或16位是同时传输的。4.并行传送的信息不要求固定的格式,这与串行传送的信息有固定格式的要求不同。
第3页,课件共94页,创作于2023年2月9.1.2并行接口的类型1.从并行接口数据传送的方向看,可分为两种,一是单向传送(只作为输入口或只作为输出口),另一种是双向传送(既可作为输入口,也可作为输出口)2.从并行接口的电路结构看,并行接口可分为硬接线接口和可编程接口。3.可编程接口可以用软件编程序的方法改变接口的工作方式及功能,具有广泛的适应性和很高的灵活性。第4页,课件共94页,创作于2023年2月§9.2可编程并行接口芯片8255A基本特性具有两个8位(PA口和PB口)和两个4位(PC口高/低4位)并行I/O端口的接口芯片。能适应CPU与I/O接口之间的多种数据传送方式的要求。PC口的特殊使用:①作数据口②当PA口和PB口工作在方式1和方式2时,作专用联络信号③作状态口④PC口可以进行按位控制。5第5页,课件共94页,创作于2023年2月可编程并行接口8255A主要内容1、内部结构与功能2、外部引脚与端口操作3、编程控制字
1)方式选择控制字
2)C口置/复位控制字3)应用举例4、工作方式与信号组态
1)方式0——基本I/O例子 2)方式1——单向选通I/O例子 3)方式2——双向选通I/O应用方法与步骤:1、硬件连接2、编程准备
1)选用端口
2)确定方式
3)确定控制字3、编写初始化程序4、编写应用程序6第6页,课件共94页,创作于2023年2月§9.2可编程并行接口芯片8255A9.3.18255A结构一、外部引脚①与系统总线的连接信号●面向数据总线的有:●面向地址总线的有:●面向控制总线的有:②与外部设备的连接信号
PA0~PA7:端口A的输入/输出线。
PB0~PB7:端口B的输入/输出线。
PC0~PC7:端口C的输入/输出线。12345678910111213141516171819204039383736353433323130292827262524232221PA4PA5PA6PA7PB7PB5PB4PB3PB8D1D2D3D4D0D5D6D7VCCRESETWRRDCSPA3PA2PA1PA0GNDA1A0PC7PC6PC4PC0PC1PC2PC5PB0PB1PB2PC38255A
D0~D7:双向数据线,用于CPU向8255A发送命令、数据和8255A向CPU回送状态、数据。CS:选片信号A1、A0:地址线,用以选择片内端口这24根信号线均可用来连接I/O设备和传送信息。其中,A口和B口一般只作输入/输出的数据口用(采用特殊技巧,有时也可利用它们从I/O设备读取一些状态信号,如打印机的“忙”(Busy)状态信号、A/D转换器的“转换结束”(EOC)状态信号,但对A口和B口来说,都是作8255A的数据口读入),C口既可作数据口,也作状态口使用。RD:读信号,低电平有效。WR:写信号,低电平有效。RESET:复位信号,高电平有效。它清除控制寄存器并将8255A的A、B、C三个端口均置为输入方式;输入寄存器和状态寄存器被复位,并且屏蔽中断请求;24条面向外设信号线呈现高阻悬浮状态。7第7页,课件共94页,创作于2023年2月§9.2可编程并行接口芯片8255A二、8255A内部结构A组控制数据总线缓冲器读/写控制逻辑B组控制A组A口(8位)A组C口高位(4位)B组C口低位(4位)B组B口(8位)D0~D7RDRDA1A0RESETRDPA0~PA7PC4~PC7PC0~PC3PB0~PB7①数据总线缓冲器这是一个三态双向8位缓冲器,它是8255A与CPU系统数据总线的接口。③输入/输出端口A、B、C
8255A包括3个8位输入输出端口(port)。每个端口都有一个数据输入寄存器和一个数据输出寄存器。④A组和B组控制电路控制A、B和C三个端口的工作方式。
PC口的作用与8255A的工作方式有关,它除了作数据口以外,还有其他用途,如:
a.作数据口。
b.作状态口。
c.作专用(固定)联络(握手)信号线。
d.作按位控制用。②读/写控制逻辑读/写控制逻辑由读信号RD、写信号WR、选片信号CS以及端口选择信号A1、A0等共同产生操作控制逻辑。8第8页,课件共94页,创作于2023年2月CSA1A0RDWR读操作内容PC系统00001PA口→数据总线(→CPU)数据60H00101PB口→数据总线(→CPU)数据61H01001PC口→数据总线(→CPU)数据62H写操作00010PA口←数据总线(←CPU)数据60H00110PB口←数据总线(←CPU)数据61H01010PC口←数据总线(←CPU)数据62H01110控制寄存器←数据总线控制字63H无操作情况1××××总线悬浮(三态)0××11总线悬浮01101控制口不能读63H三、8255A基本操作与端口地址9第9页,课件共94页,创作于2023年2月9.2.28255控制字一、
工作方式选择控制字作用:指定8255A3个并行端口(PA、PB、PC)的工作方式及该方式下的功能(传输方向)——是作输入还是作输出。格式:8位,其中最高位是特征位,一定要写1,其余各位定义如下,应根据用户的设计要求填写1或0。1D6D5D4D3D2D1D0特征位A组方式:00=方式001=方式110=方式211=不用PA0=输出1=输入PC4~70=输出1=输入B组方式0=0方式1=1方式PB0=输出1=输入PC0~30=输出1=输入A口方式A口方向C口上半方向B口方式B口方向C口下半方向10第10页,课件共94页,创作于2023年2月9.2.28255控制字例1:
要把A口指定为方式1,输入,C口上半部为输出;B口指定为方式0,输出,C口下半部定为输入,则工作方式命令代码是:
10110001B或B1H。若将此命令代码写到8255A的命令寄存器,即实现了对8255A工作方式及端口功能的指定,或者说完成了对8255A的初始化。初始化的程序段为:
MOVDX,303H
;8255A命令口地址
MOVAL,0B1H
;初始化命令字
OUTDX,AL
;送到命令口8255A命令口地址就应该是303H吗?11第11页,课件共94页,创作于2023年2月9.2.28255控制字二、
PC口按位置/复位控制字作用:指定PC口的某一位(某一个引脚)输出高电平或低电平。格式:8位,其中最高位是特征位,一定要写0,其余各位的定义如下,应根据用户的设计要求填写1或0.0D6D5D4D3D2D1D0特征位不用(写0)位选择000=C口0位001=C口1位…111=C口7位1=置位(高电平)0=复位(低电平)12第12页,课件共94页,创作于2023年2月9.2.28255控制字例2:若要把C口的PC2引脚置成高电平输出,则命令字应该为:
00000101B或05H。
将该命令的代码写入8255A的命令寄存器,就会使得从PC口的PC2引脚输出高电平,其程序段为:
MOVDX,303H
;8255A命令口地址
MOVAL,05H
;使PC2=1的命令字
OUTDX,AL
;送到命令口如果要使引脚PC2输出低电位,则程序段为:
MOVDX,303H
;8255A命令口地址
MOVAL,04H
;使PC2=0的命令字
OUTDX,AL
;送到命令口13第13页,课件共94页,创作于2023年2月9.2.28255控制字利用C口的按位控制特性还可以产生负脉冲或方波输出,对外设进行控制。例3:利用8255A的PC7产生负脉冲,作打印机接口电路的数据选通信号,其程序段为:
MOVDX,303H;8255A命令口
MOVAL,00001110B;置PC7=0OUTDX,ALNOP;维持低电平
NOPMOVAL,00001111B;置PC7=1OUTDX,AL哈哈!你们谁能编程让PC7输出方波?不错!如果只让PC7输出100个方波脉冲,又将怎么办?14第14页,课件共94页,创作于2023年2月9.2.28255控制字3.关于两个命令的讨论①方式命令是对8255A的3个端口的工作方式及功能进行指定,即进行初始化,初始化工作要在使用8255A之前做。②按位置位/复位命令只是对PC口的输出进行控制,使用它不会破坏已经建立的3种工作方式,而是对它们实现动态控制的一种支持。它可放在初始化程序以后的任何地方。③两个命令的最高位(D7)都分配作特征位,之所以要设置特征位,是为了识别两个不同的命令。④按位置位/复位操作的是PC口,但操作的命令代码只能写入命令口。15第15页,课件共94页,创作于2023年2月*4.A口和B口的按位使用方法
A口、B口也可以按位输出高低电平,但是,它与前面的按位置位/复位命令有本质的差别,并且实现的方法也不同,A口、B口按位输出是以送数据到A口、B口来实现的。其具体作法是:若要使某一位置高电平,则先对端口进行读操作,将读入的原输出值,“或”上一个字节,字节中使该位为1,其他位为0,然后再送到同一端口,即可使该位置位。类似过程,用“与”的方法可以使某位输出“0”。
10101010OR
00000001
10101011
10101011AND111111101010101016第16页,课件共94页,创作于2023年2月例4:若要使PA7位输出高/低电平,则用下列程序段:使PA7输出高电平.MOVDX,300H;PA数据口地址
INAL,DX;读入A口原输出内容
ORAL,80H;使PA7=1OUTDX,AL;输出PA717第17页,课件共94页,创作于2023年2月使PA7输出低电平MOVDX,300H;A口地址INAL,DX;读入端口原输出值ORAL,7FH;使PA7=0OUTDX,AL;输出PA718第18页,课件共94页,创作于2023年2月9.2.38255A的工作方式
8255A的工作方式与端口有关,PA口有三种方式(方式0、方式1、方式2),PB口有两种方式(方式0、方式1),PC口只有1种I/O方式——方式0。
PA、PB口需要联络线时,也由PC口提供。一、方式0——基本I/O(简单的输入/输出方式)
1、适用场合:无条件传送方式或查询方式
2、可用端口:A口、B口、C口
3、方式0的查询方式应用:
1)A口或B口作数据口
2)C口上部/下部各任选一条线分别作状态线和控制(选通)线(其余仍可用着I/O线)19第19页,课件共94页,创作于2023年2月9.2.38255工作方式
——方式04、方式0的主要特点:①A口、B口和C口均可以独立作为单向输入或输出口,彼此没有规定任何联系。②输出锁存,输入不锁存。③主要用于同步数据传送场合,CPU与外设之间不需联络信号,可实现3个通道数据传送。④也可用于查询式数据传送,此时C口上下部分分别定义为输入和输出,用作A口和B口的状态线和控制线。20第20页,课件共94页,创作于2023年2月9.2.38255工作方式
——方式1二、方式1——选通I/O1、适用场合:查询式或中断方式I/O2、特点:需要PC口提供固定的应答联络信号
3、可用端口:A口、B口
4、方式1端口I/O组态与时序:21第21页,课件共94页,创作于2023年2月9.2.38255工作方式——方式1A口方式1输入组态:PC4PC5PC3PA7~PA0INTEAIBFAINTRASTBA中断允许触发器地址同PC4数据选通信号,低电平有效,表示外设已将数据置入A口锁存
输入缓冲器满信号,高电平有效,表示锁存入A口的数据还未被CPU取走此信号(PC5)可作状态信号供CPU查询式输入使用;其引出线(IBF)给外设,外设视为CPU是否取走数据的状态信号。中断请求信号,高有效,请求CPU接收数据。当STBIBFINTE为高时被置高。22第22页,课件共94页,创作于2023年2月9.2.38255工作方式——方式1B口方式1输入组态:PC2PC1PC0PB7~PB0INTEAIBFAINTRASTBA中断允许触发器地址同PC2数据选通信号,低电平有效,表示外设已将数据置入B口锁存输入缓冲器满信号,高电平有效,表示锁存入B口的数据还未被CPU取走中断请求信号,高有效,请求CPU接收数据。当STBIBFINTE为高时被置高。此信号(PC1)可作状态信号供CPU查询式输入使用;其引出线(IBF)给外设,外设视为CPU是否取走数据的状态信号。23第23页,课件共94页,创作于2023年2月9.2.38255工作方式——方式1方式1输入时序:datadataINTRIBF
输入端口D0~D7STBRD24第24页,课件共94页,创作于2023年2月9.2.38255工作方式——方式1方式1输出组态:PC2PC1PC0PB7~PB0INTEBOBFBINTRBACKBPC6PC7PC3PA7~PA0INTEAOBFAINTRAACKA中断允许触发器地址同PC6外设响应信号,低电平有效,表示外设已经从8255取走数据,输出缓冲器满信号,低电平有效,表示CPU已经将数据输出到指定端口。ACK可使其恢复为高。中断请求信号,高电平有效,当数据已被外设取走后,要求CPU输出新的数据。WR上升沿使其复位。此信号(PC7/PC1)可作状态信号供CPU查询式输出使用;其引出线(OBF)给外设,外设视为CPU的状态信号。25第25页,课件共94页,创作于2023年2月9.2.38255工作方式——方式1方式1输出时序:输出端口
INTR
D0~D7WROBFACK
datadata26第26页,课件共94页,创作于2023年2月9.2.38255工作方式——方式15、8255A方式1的特点:①方式1是一种配置固定应答联络信号的选通输入/输出方式或叫应答方式,这种方式通常用于查询(条件)传送或中断传送。数据的输入输出都有锁存功能。②PA和PB为数据口,而PC口的大部分分配作专用(固定)的联络信号的C口引脚,用户不能再指定作其他作用。③各联络信号线之间有固定的时序关系,传送数据时,要严格按照时序进行。④单向传送。一次初始化只能设置在一个方向上传送,不能同时作两个方向的传送。27第27页,课件共94页,创作于2023年2月9.2.38255工作方式——方式2*三、方式2及应用——双向选通I/O1、适用场合:查询式或中断方式I/O2、特点:
①需要PC口提供固定的应答联络信号②各联络线的定义及其时序关系和壮态基本上是在1方式下输入和输出两种操作的组合。
3、可用端口:A口
4、方式2端口I/O组态与时序:28第28页,课件共94页,创作于2023年2月9.2.38255工作方式——方式21)方式2组态图:PC6PC7PC3PA7~PA0INTE1OBFAINTRAACKAPC4PC5IBFASTBAINTE2用PC6设置INTE1(输出)用PC4设置INTE2(输入)输入和输出中断通过或门输出INTRA信号29第29页,课件共94页,创作于2023年2月9.2.38255工作方式——方式22)方式2时序图:外设数据线tWOBtAOBtSTtSIBtPStADtKDtPHtRIBINTRIBFWROBFACKSTBRD数据从外设到8255A数据从8255A到外设数据从8255A到CPU数据从CPU到8255A30第30页,课件共94页,创作于2023年2月8255应用举例1、设8255A的端口地址为60H~63H,试编写下列各种情况的初始化程序: (1)将A组和B组设置为方式0,A口和C口味输入口,B口为输出口; (2)将A组设置为方式2,B组设置为方式1,B口为输出口; (3)将A组设置为方式1,端口A为输入,PC6和PC7输出,B组设置为方式1,且B口为输入口。31第31页,课件共94页,创作于2023年2月例9-3应用8255A方式0连接打印机;初始化8255A,使A口处于方式0、输出,C口高4位输入、低4位输出MOVAL,10001000BOUT63H,ALMOVAL,00000011BOUT63H,ALWAIT:INAL,62HANDAL,00100000BJNZWAITMOVAL,CLOUT60H,ALMOVAL,00000010BOUT63H,ALCALLDELAYMOVAL,00000011BOUT63H,AL
┋8255A打印机PA7~PA0PC1PC5DATA0~DATA7STROBEBUSY图9-7方式0的打印机接口第32页,课件共94页,创作于2023年2月9.2.38255工作方式
——方式0及应用2、方式0应用举例
例.并行打印机接口设计
1)要求为某应用系统配置一个并行打印机接口,并且通过接口,CPU采用查询方式把存放在BUF缓冲区的1行字符(ASCII码)送去打印。
33第33页,课件共94页,创作于2023年2月9.2.38255工作方式
——方式0及应用
2)分析由于打印接口直接面向的对象是打印机接口标准,而不是打印机本身,因此打印机接口要按照接口标准的要求进行设计。有关打印机接口标准Centronics的信号线定义和工作时序如下图:DATA0~DATA7STROBEBUSYACK字符34第34页,课件共94页,创作于2023年2月过程:采用查询方式时,打印机与CPU之间传送数据的过程是:①首先查询BUSY。若BUSY=1,打印机忙,则等待;若BUSY=0,打印机不忙,则送数据。②通过并行接口把数据送给标准插座DATABIT1~DATABIT8
数据线上,此时数据并未送入打印机。③再送出一个数据选通信号DATASTROBE(负脉冲)给标准插座的1号引脚,把数据线上的数据打入到打印机的内部缓冲器。④打印机在收到数据后,通过插座的11号引脚发出“忙”(BUSY=1)信号,表明打印机正在处理输入的数据。⑤最后当打印机将该字符打印后,在10号引脚上送出一个回答信号ACK给主机,表示上一个字符已经处理完毕,同时使BUSY=0。DATA0~DATA7STROBEBUSYACK字符35第35页,课件共94页,创作于2023年2月9.2.38255工作方式
——方式0及应用
3)设计接口电路的设计包括硬件接口电路和软件驱动程序两部分。
①打印机接口电路
打印机接口电路原理框图如下图所示。该电路的设计思路是:按照Centronicss标准对打印机接口信号线的定义,最基本的信号线需要8根数据线(DATABIT1~8),1根控制线(STB),1根状态线(BUSY)和1根地线。CPU
PA0~7PC7PC0地
地BUSYSTBDATA0~71112~98255A打印机插座36第36页,课件共94页,创作于2023年2月选用8255A的PA口作数据口输出8位打印数据,工作方式为方式0;c口上半部输出,下半部输入。②接口驱动程序。其程序流程图如右图所示。驱动程序的程序段见下页:9.2.38255工作方式
——方式0及应用结束8255A初始化BUSY=0?送数送STB负脉冲内存+1字节数-1送完?开始YNYN37第37页,课件共94页,创作于2023年2月9.2.38255工作方式—方式0及应用;设8255端口地址为90H~93H;-----------------------------DATA SEGMENT ;定义打印数据缓冲区BUFF DB ‘HELLO!’,0DH,0AHNUM EQU $-BUFF;打印字符个数DATA ENDS;----------------------------CODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATA ;数据段基址DS赋初值
MOV DS,AX MOV AL,10000001B ;8255初始化
OUT 93H,AL MOV AL,00001111B ;先使PC7=1,即STB=1 OUT 93H,AL LEA SI,BUFF ;设置打印指针
MOV CX,NUM ;打印字符计数器赋初值38第38页,课件共94页,创作于2023年2月9.2.38255工作方式
——方式0及应用L:
INAL,92H;查BUSY=0?(PC0)
TESTAL,01H;00000001B
JNZL ;忙,则等待;不忙,则向A口送数
MOVAL,[SI];从缓冲区取1字符
OUT90H,AL;送到A口
MOVAL,00001110B;发打印机选通负脉冲
OUT 93H,AL ;使STB信号为低(PC7=0)
NOP MOVAL,00001111B;再使STB信号变高(PC7=1)
OUT 93H,AL39第39页,课件共94页,创作于2023年2月9.2.38255工作方式——方式0及应用
INCSI;打印指针加1 DECCX;打印字符数减1 JNZL;未完,继续
MOVAX,4C00H;打印完返回DOS
INT21H CODE ENDS ENDSTART ;源程序结束40第40页,课件共94页,创作于2023年2月*9.2.38255工作方式——方式1及应用3、8255方式1应用举例例1:若允许PA口输入时,产生中断请求,则必须设置INTEA=1,即置PC4=1;若禁止它产生中断请求,则置INTEA=0,即置PC4=0,其程序段为:
MOVDX,303H;8255A命令口
MOVAL,00001010B;置PC4=1,允许中断请求
OUTDX,AL
MOVAL,00001000B;置PC4=0,禁止中断请求
OUTDX,AL41第41页,课件共94页,创作于2023年2月例9-4应用8255A工作在方式0和方式1进行双机并行通信。;甲机发送方的发送程序MOVAL,10100000BOUT63H,ALMOVAL,0DHOUT63H,ALTEST1:
INAL,DXANDAL,40HJNZTEST1MOVAL,CLOUT60H,AL;乙机接收方的接收程序MOVAL,10011000B OUT63H,ALMOVAL,01HOUT63H,ALRECEIVE:INAL,62HTESTAL,80HJNZRECEIVEINAL,60HMOVCL,ALMOVAL,00HOUT63H,ALCALLDELAYINCALOUT63H,AL
┇PA0~7PA0~7PC7PC7PC0PC6PC4~6PC1~3PB0~7PC0~5PB0~7PC38255A8255A0方式1方式乙(接收)CPU甲(发送)CPU未用OBFACK图9-8两种方式的并行传送接口电路框图第42页,课件共94页,创作于2023年2月9.2.38255工作方式——方式1及应用例2在甲乙两台微机之间并行传送1K字节数据。甲机发送,乙机接收。假设甲机要发送的数据存放在BUFS缓冲区,乙机把接收到的数据存放到BUF缓冲区。甲机一侧的8255A采用方式1工作,乙机一侧的8255A采用方式0工作。两机的CPU与接口之间都采用查询方式交换数据。1.分析双机均采用可编程并行接口芯片8255A构成接口电路,此时,双方的8255A把对方视为I/O设备。43第43页,课件共94页,创作于2023年2月9.2.38255工作方式——方式1及应用2.设计(1)硬件连接
根据上述要求,接口电路的连接如下图:方式0方式18255APA0~7PC7PC3PC4~6PC0~2PB0~7PA0~7PC7PC6PC4~5PC0~3PB0~7未用8255A甲(发送)CPU乙(接收)CPUACKOBF44第44页,课件共94页,创作于2023年2月9.2.38255工作方式——方式1及应用(2)软件编程
接口驱动程序包含发送与接收两个程序。甲机发送程序段:MOVDX,303H;8255A命令口MOVAL,10100000B;初始化工作方式字OUTDX,ALMOVAL,0DH;置发送中断允许INTEA=1OUTDX,AL;PC6=1MOVSI,OFFSETBUFS;设置发送数据区的指针MOVCX,1024;发送字节数MOVDX,300H;向A口写第一个数,产生第一个OBF信号MOVAL,[SI]OUTDX,AL45第45页,课件共94页,创作于2023年2月9.2.38255工作方式——方式1及应用
INCSI;内存地址加1DECCX;传送字节数减1L:MOVDX,302H;8255A状态口,即C口
INAL,DX;查发送中断请求INTRA=1?(PC3=1?)
ANDAL,08HJZL;若无中断请求,则等待;若有中断请求,则继续向A口写数
MOVDX,300H;8255APA口地址
MOVAL,[SI];从内存取第二个数
OUTDX,AL;通过A口向乙机发送第二个数据
INCSI;内存地址加1此处虽然使用了8255的INTR信号,但却是查询式传送。也可以直接查询PC7,即OBF信号。由接口图可见,PC3并未连接中断请求,此处为何“查询”中断请求?
46第46页,课件共94页,创作于2023年2月9.2.38255工作方式——方式1及应用
DECCX;字节数减1JNZL;字节未完,继续
MOVAH,4000H;已完,退出
INT21H;返回
BUFSDB1024个数据47第47页,课件共94页,创作于2023年2月;乙机接收程序段:
MOVDX,303H;初始化8255MOVAL,10011000BOUTDX,ALMOVAL,00000111B;使PC3(ACK)=1
OUTDX,ALMOVCX,1024;接收数据循环次数初始化
LEABX,BUFWAIT:MOVDX,302H;读状态口,即C口
INAL,DXANDAL,80H;查询OBF信号,甲已送出?
JNZWAIT48第48页,课件共94页,创作于2023年2月
MOVDX,300H;从A口接收数据
INAL,DXMOV[BX],AL;保存数据
MOVDX,303HMOVAL,00000110B;由PC3发ACK脉冲,先使PC3=0,再使PC3=1OUTDX,ALINCBXMOVAL,00000111BOUTDX,ALLOOPWAIT49第49页,课件共94页,创作于2023年2月9.3串行通信的基本概念9.3.1串行数据传送方式9.3.2波特率和发送/接收时钟9.3.3串行通信的基本方式9.3.4信号调制与解调9.3.5串行接口的任务第50页,课件共94页,创作于2023年2月9.3.1串行数据传送方式1.全双工2.半双工
第51页,课件共94页,创作于2023年2月
1.全双工当数据的发送和接收分流,分别由两根不同的传输线传送时,通信双方都能在同一时刻进行发送和接收操作,这样的传送方式就是全双工(FullDuplex)制。发送器发送器接收器接收器B站A站图9-9全双工方式示意图第52页,课件共94页,创作于2023年2月2.半双工若使用同一根传输线既作接收又作发送,虽然数据可以在两个方向上传送,但通信双方不能同时收发数据,这样的传送方式就是半双工(HalfDuplex)制。
A站B站发送器发送器接收器接收器图9-10半双工方式示意图第53页,课件共94页,创作于2023年2月发送器接收器A站B站单工方式示意图3.单工第54页,课件共94页,创作于2023年2月9.3.2波特率和发送/接收时钟1.波特率2.发送/接收时钟
第55页,课件共94页,创作于2023年2月并行通信中,传输速度以每秒传输的字节(B/s)表示。在串行通信中,传输速率用波特率来表示。所谓波特率,是指单位时间内传送二进制数据的位数,单位为位/秒(b/s)或称为波特。每秒钟所传输的字符数(字符速率)和波特率是两种概念
例:某系统每秒传送120个字符(即字符速率为120个/秒),每个字符帧由1个起始位、8个数据位和1个停止位组成,则其传送速率为:(1+8+1)×120=1200b/s=1200波特每一位的传送时间(也叫宽度)为波特率的倒数:
Td=1/1200=0.833ms1.波特率第56页,课件共94页,创作于2023年2月
RXDTXDGNDRXDTXDGNDRXDTXDGND电平转换RXDTXDGNDRXDTXDGND电平转换RXDTXDGND微机微机其他设备较远距离传送电路近距离传送电路(比如主板上的两个芯片)串行通信线的连接:第57页,课件共94页,创作于2023年2月微机接口调制解调器调制解调器接口微机电话分机电话分机远距离传送电路数字信号通过调制器变成模拟信号通过电话线传送到对方,接收方通过解调器将模拟信号转换成数字信号接收。第58页,课件共94页,创作于2023年2月常用串口设备级:COM、USB芯片级:SPI、I2CRS-232标准串口的形式电平转换芯片MAX232串行通信接口串行扩展接口第59页,课件共94页,创作于2023年2月串行通信接口总线标准计算机通信主要采用异步串行通信方式,常用的异步总线标准有三种:●RS-232(RS-232ARS-232BRS-232C)●RS-449(RS422RS423RS485)●20mA电流环
这里重点介绍RS-232RS-232C:速率:20Kbit/S,最大通信距离:15mRS422:10Mbit/s,:300m90Kbit/s,:1200m第60页,课件共94页,创作于2023年2月第61页,课件共94页,创作于2023年2月RS-232C
美国电子工业协会(EIA)公布的一种异步通信标准。RS232C标准是:P135●设备之间通信的距离不大于15米●最大传输速率20Kb/S●采用负逻辑:“1”——―3V∽―15V“0”——+3V∽+15V●不带负载时输出电平:―25V∽+25V●输出短路电流:<0.5A●最大负载电容:2500pF
当计算机采用RS232标准时必须通过电平转换,MAX232是EIA和TTL电平转换芯片。内部具有电压提升电路,并有两路接收器和发送器。其连线和引脚如图第62页,课件共94页,创作于2023年2月T1INT2INR1OUTR2OUTV+V-T1OUTT2OUTR1INR2IN+5V1.01.01.0
1.01.0+10V-10VTTL/CMOSTTL/CMOSRS-232RS-232VCCV+V-T2OUTT1OUTR2INVCCR1INR1OUTT1INT2INR2OUTGNDMAX232MAX232连线图MAX232引脚图第63页,课件共94页,创作于2023年2月VCCRSTXTAL1XTAL2TXDRXD89C51C1C2T1INR1OUTR1INT1OUTV-V+VCCC3C4C5GNDGNDC1=C2=C3=C4=C5=1MAX23215PC机COM1或COM212346789+5V+5V第64页,课件共94页,创作于2023年2月2.发送/接收时钟发送端使用的用于决定数据位宽度的时钟称为发送时钟。接收端使用的用于测定每一位输入数据位宽度的时钟称为接收时钟。波特率因子接收时钟和发送时钟的频率可以是波特率的n倍,一般取16倍、32倍或64倍。这个倍数就称为波特率因子。或者从另外一个角度来说,发送/接收1位数据(1个二进制数据位)所需要的时钟脉冲的个数就是波特率因子,单位是个/位。第65页,课件共94页,创作于2023年2月接收/发送时钟频率与波特率的关系:
收/发波特率=收/发时钟频率/n
n波特率因子
=1,16,64(同步取n=1,异步常取n=16,64)第66页,课件共94页,创作于2023年2月9.3.3串行通信的基本方式1.异步通信2.同步通信
第67页,课件共94页,创作于2023年2月1.异步通信00/10/10/1…
0/10/10/111100/1起始位奇偶校验位(可有可无)5~8位数据位(先送最低位)LSBMSB空闲位停止位(1,11/2或2位)第n个字符(8~12位)第n+1个字符图9-11异步串行通信格式第68页,课件共94页,创作于2023年2月起始位——每个字符开始传送的标志,起始位采用逻辑0电平起始位校验位停止位空闲位数据位低位高位字符0/10/10/10/110111…数据位——数据位紧跟着起始位传送。由5~8个二进制位组成,低位先传送校验位——用于校验是否传送正确;可选择奇检验、偶校验或不传送校验位停止位——表示该字符传送结束。停止位采用逻辑1电平,可选择1、1.5或2位空闲位——传送字符之间的逻辑1电平,表示没有进行传送第69页,课件共94页,创作于2023年2月2.同步通信同步通信的特点是不仅字符内部保持“同步”,而且字符与字符之间也是同步的以一个数据块(帧)为传输单位,每个数据块附加1个或2个同步字符,最后以校验字符结束同步通信的数据传输效率和传输速率较高,但硬件电路比较复杂串行同步通信主要应用在网络当中最常使用高级数据链路控制协议HDLC~~~~同步字符数据数据数据校验字符第70页,课件共94页,创作于2023年2月计算机通信是传送数字信号,远程数据通信往往借用现有的公用电话网,但电话网是为音频模拟信号的设计的。一般带宽为300~3400Hz,不适于数据信号。发送时,对数字信号调制,变为适合在电话网上传输相应的音频信号;接收时,解调,还原数字信号。计算机MODEMMODEM模拟信号数字信号数字信号CRT101010101010调制和解调9.3.4信号调制与解调第71页,课件共94页,创作于2023年2月调制器(Modulator)是一个波形变换器,它将基带数字的波形变换成适合于模拟信道传输的波形。解调器(Demodulator)是一个波形识别器,将接收到的调制后模拟信号恢复成原来的数字信号。调制器解调器010010010010第72页,课件共94页,创作于2023年2月最基本的调制方法有以下几种:(1)调幅(AM)即载波的振幅随基带数字信号而变化.“1”对应有载波“0”对应无载波(2)调频(FM)
即载波频率随数字信号而变化“0”对应”f1”“1”对应“f2”(3)调相(PM)
即载波初始相位随基带数字信号而变化.“0”对应相位0度“1”对应相位180度f1f2FMAM0100110度180度PM调制方法:第73页,课件共94页,创作于2023年2月9.3.5串行接口的任务1.进行串-并转换2.实现串行数据格式化
3.可靠性检验
4.实施接口与通信设备之间的联络控制
第74页,课件共94页,创作于2023年2月9.4可编程串行接口8251A9.4.18251A的基本性能9.4.28251A内部结构及引脚功能9.4.38251A的控制字和状态字9.4.48251A的初始化编程9.4.58251A应用举例第75页,课件共94页,创作于2023年2月9.4.18251A的基本性能1.通过初始化编程,可以工作在同步通信或异步通信方式。2.同步方式时,可设定为内同步或外同步两种做法,同步字符允许采用单同步字符和双同步字符,由用户选定。3.异步方式时,数据位仍可在5~8位范围内选用,用1位作为奇偶校验位或不设置奇偶位。4.8251A具有奇偶校验、帧校验和溢出校验三种字符数据的校验方式,校验位的插入、检查和出错标志的建立均由芯片自动完成。5.8251A能与MODEM直接相连,接收和发送的数据均可存放在各自的缓冲器中,以便实现全双工通信。
第76页,课件共94页,创作于2023年2月9.4.28251A内部结构及引脚功能8251A内部结构8251A引脚功能第77页,课件共94页,创作于2023年2月串口芯片的一般结构第78页,课件共94页,创作于2023年2月1.8251A内部结构
RESET状态缓冲器发送数据/命令缓冲器接收数据缓冲器外部数据总线内部数据总线读/写控制逻辑调制控制发送器(P→S)发送(控制)接收(控制)接收器(S→P)56789101112123428272625242322212019181714131615CLK
C/D
RD
C/D
RD
WRCS
CS
WR
TxD
TxRDY
TxE
TxC
DTR
DSR
RTS
CTS
RxC
RxD
RxRDY
SYNDET
TxCD4D7D6D5GNDRxDD3D2RxRDYD1D0Vcc(+5V)
RxC
DTR
RTS
DSRCTS
RESETCLKTxDTxESYNDETTxRDY图9-128251A内部结构及引脚图8251A第79页,课件共94页,创作于2023年2月9.4.38251A的控制字和状态字1.方式控制字2.操作控制字3.状态字
第80页,课件共94页,创作于2023年2月1.方式控制字D7D6D5D4D3D2D1D0
S2S1EPPENL2L1B2B1同步方式及同步字符个数×0:内同步×1:外同步0×:2个同步字符1×:1个同步字符停止位位数00:不确定01:1位10:1.5位11:2位字符长度00:5位01:6位10:7位11:8位奇偶校验×0:无校验01:奇校验11:偶校验工作方式及波特率因子00:同步方式01:异步×110:异步×1611:异步×64Y(同步)N(异步)D1D0=00?图9-138251A方式控制字格式第81页,课件共94页,创作于2023年2月2.操作控制字 发送允许 1,允许发送 0,屏蔽发送 数据终端准备好 1。迫使DTR低电平 0,正常工作 接收允许 1,允许接收 0,屏蔽接收发中止字符1。迫使TxD为低电平0,正常工作D7D6D5D4D3D2D1D0
EHIRRTSERSBRKRxEDTRTxEN搜索同步字符1,启动搜索同步字符0,不搜索同步字符内部复位1。内部软复位以便重置方式控制字0,正常工作 请求发送 1.使RTS低电平 0,正常工作 清除错误标志 1.使状态寄存器中的 PE、OE、FE清零 0,正常工作图9-14操作控制字格式第82页,课件共94页,创作于2023年2月3.状态字图9-15状态字格式D7D6D5D4D3D2D1D0
DSRSYNDETFEOEPETxERxRDYTxRDY数传机就绪同步检出格式错溢出错奇偶错发送器空接收准备好发送准备好第83页,课件共94页,创作于2023年2月例9-5,例9-6
例9-5串行通信时,在发送程序中,需查状态字的D0位是否置1,即查TxRDY=1?其程序段为:L:MOVDX,309H
INAL,DXANDAL,01HJZL例9-6串行通信时,在接收程序中,需查状态字的D1位是否置1,即查RxRDY=1?其程序段为:L1:MOVDX,309H
INAL,DXANDAL,02HJZL1第84页,课件共94页,创作于2023年2月9.4.48251A的初始化编程例9-7例9-8例9-9RESET写方式控制字异步方式?输入第一个同步字符单同步?输入第二个同步字符写操作命令字RESET?串行传送数据完成?NNNNYYYY第85页,课件共94页,创作于2023年2月例9-7编写一段通过8251A采用查询方式接收数据的程序。将8251A定义为异步传送方式,波特率因子为64,采用偶校验,1位停止位,7位数据位。设8251A数据口地址为04A0H,控制口地址为04A2H。
MOVDX,04A2H
MOVAL,40HOUTDX,AL
MOVAL,7BH;写方式控制字
OUTDX,ALMOVAL,14H;写操作控制字
OUTDX,ALWAIT:INAL,DX;读入状态字
ANDAL,02HJZWAIT;检查RxRDY是否为1MOVDX,04A0HINAL,DX;输入数据第86页,课件共94页,创作于2023年2月例9-8编写使8251A发送数据的程序。将8251A定义为异步传送方式,波特率因子为64。采用偶校验,1位停止位,7位数据位。8251A与外设有握手信号,采用查询方式发送数据。设8251A数据口地址为04A0H,控制口地址为04A2H。
MOVDX,04A2H
MOVAL,40HOUTDX,ALMOVAL,7BH;写方式控制字
OUTDX,ALMOVAL,31H;写操作控制字
OUTDX,WAIT:INAL,DX;读入状态字
ANDAL,01H;检查TxRDY是否为1JZWAITMOVDX,04A0HMOVAL,36H;输出的数据送ALOUTDX,,AL┇第87页,课件共94页,创作于2023年2月例9-9编写接收数据的初始化程序。要求8251A采用同步传送方式,2个同步字符,内同步,偶校验,7位数据位和同步字符为16H。设8251A数据口地址为04A0H,控制口地址为04A2H。MOVDX,04A2H;控制口地址送DXMOVAL,40HOUTDX,ALMOVAL,38H;写方式控制字MOVDX,ALMOVAL,16H;同步字符送ALOUTDX,ALOUTDX,AL;输入两个同步字符MOVAL,96H;写操作控制字OUTDX,AL┇第88页,课件共94页,创作于2023年2月例9-10某系统中,8251作为8086CPU与CRT显示器之间的接口芯片。设8251的数据端口为FFF0H,方式字和命令字状态字的端口地址为FFF2H。假设通信方式为:异步方式,字符长度为8位,停止位为1位,不用奇偶校验,波特率因子为64;设允许发送、允许接收和数据终端准备好;并用查询方式将寄存器CL中的ASCII字符送CRT显示,试完成该异步通信程序。分析:根据题意,方式控制字为4FH(01001111B);命令控制字为27H(00100111B)。MOVDX,0FFF2HM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 26年银发压疮难愈解决方案课件
- 企业财务风险评估报告(范本)
- 能源公司副总经理岗位职责说明书和任职要求
- 2026年注册公用设备工程师考试备考冲刺模拟试卷
- 手术器械规范使用与维护管理的专家共识(2026版)
- 用图象表示变量之间的关系 课件 2025-2026学年北师大版数学七年级下册
- 自驾出行安全驾驶技巧大全
- 2025-2026学年河北省张家口市高考冲刺历史模拟试题含解析
- 2026年应急救援应急救援评估体系创新报告
- 2026年食品机械行业烘焙设备技术发展报告
- YY 0267-2025血液净化体外循环系统血液透析器、血液透析滤过器、血液滤过器及血液浓缩器用体外循环血路/液路
- 2025年四川省泸州市中考英语真题 (原卷版)
- 房屋被淹赔偿合同协议书
- 机加检验工试题及答案
- T/CI 104-2023公路隧道瓦斯工区作业设备安全技术规范
- 2025年济南历城区九年级中考英语二模考试试题(含答案)
- 脾胃病的中医护理
- 《半导体集成电路》课件-第七章:可靠性评价与失效分析
- 2024年广东惠州大亚湾开发区招聘公办学校教师真题
- 人教版2025年八年级数学下册章节重点梳理 第19章 一次函数(4个知识点+14类题型突破)
- 人教版2024-2025学年度八年级下册物理期中模拟测试卷(含答案)
评论
0/150
提交评论