串并行通信和接口技术_第1页
串并行通信和接口技术_第2页
串并行通信和接口技术_第3页
串并行通信和接口技术_第4页
串并行通信和接口技术_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

串并行通信和接口技术第1页,共73页,2023年,2月20日,星期三6.1串行接口和串行通信基本的通信方式有两种: 并行通信——数据的各位同时传送; 串行通信——数据一位一位顺序传送。第2页,共73页,2023年,2月20日,星期三6.1.1串行通信涉及的几个问题在串行通信中引出了一系列的约定和概念;双方约定以何种速率进行数据的发送和接收(波特率);约定采用何种数据格式(帧格式),如果包含控制信息,其定义是什么;接收方如何得知一批数据的开始和结束(帧同步);接收方如何从位流中正确地采样到位数据(位同步);接收方如何判断收到数据的正确性(数据校验);收发出错时如何处理(出错处理)。1.串行通信的特点串行通信:通信线路简单,适用于远距离通信,但传输速度慢。

第3页,共73页,2023年,2月20日,星期三6.1.1串行通信涉及的几个问题2.数据传送方向站B站B站B全双工方式站A站A站A半双工方式单工方式接收和发送用同一的通路接收和发送用不同通路第4页,共73页,2023年,2月20日,星期三6.1.1串行通信涉及的几个问题同步通信

同步通信是以数据块(字符块)为单位传送的,形成一帧数据,作为一个整体进行发送与接收,因此,每一帧的开始需加同步字符,它要求有时钟来实现发送端与接收端之间的同步,故而硬件复杂。3.两种基本形式第5页,共73页,2023年,2月20日,星期三6.1.1串行通信涉及的几个问题异步通信异步通信以一个字符为传输单位,用起始位表示字符的开始,用停止位表示字符结束。第6页,共73页,2023年,2月20日,星期三6.1.1串行通信涉及的几个问题同步通讯:字符间和字符内部的位与位之间都需要严格同步,所以收发双方需用同一个时钟源。异步通讯:以字符为单位,传输时字符间可以异步,字符内部各位同步,所以收发双方不需要同一时钟源,只需用同频率的收发时钟。第7页,共73页,2023年,2月20日,星期三6.1.1串行通信涉及的几个问题串行传输速率也称波特率(BaudRate)每秒传输的二进制位数bps4.串行通信的传输率例1:异步传输过程假如数据传送的速率是120字符/秒,设每个字符对应1个起始位、7个信息位、1个奇偶校验位和1个停止位,则波特率为1200bps每一位的传送时间即为:

Td=1/1200=0.833(ms)第8页,共73页,2023年,2月20日,星期三6.1.1串行通信涉及的几个问题异步通讯中,二者的关系为:发送/接收时钟频率=n发送/接收波特率其中n称为波特率因子,一般n=16,32,64例2:要求异步通讯传输速率为1200bps当选择n=16时,表明一位数字信号中有16个时钟脉冲,故发送/接收时钟频率为:

120016=19.2kHz5.时钟频率同步通讯中,接收和发送的波特率分别和发送、接收时钟的频率相等。第9页,共73页,2023年,2月20日,星期三

6.信号的调制和解调 计算机通信是一种数字信号的通信,如下图所示。

在进行远程数据通信时,通信线路大多数借用电话线传送。为此,在发送时需要将数字信号(二进制信号)调制成适合在电话线上传输的音频信号。在接收时,需要解调还原成数字信号。6.1.1串行通信涉及的几个问题第10页,共73页,2023年,2月20日,星期三

6.1.1串行通信涉及的几个问题

要用调制器(Modulator)把数字信号转换为模拟信号;用解调器(Demodulator)检测此模拟信号,再把它转换成数字信号。第11页,共73页,2023年,2月20日,星期三6.1.1串行通信涉及的几个问题7.串行通信接口标准:EIARS-232C控制信号的定义:第12页,共73页,2023年,2月20日,星期三6.1.1串行通信涉及的几个问题信号电平标准EIARS-232C第13页,共73页,2023年,2月20日,星期三6.1.1串行通信涉及的几个问题计算机和远方以及当地终端(用查询方式交换信号)的连接的示意图如下:第14页,共73页,2023年,2月20日,星期三6.1.2串行接口微型计算机与I/O设备的接口按照数据传送格式的不同,可分为并行接口和串行接口两种。

实现并行通信的接口就是并行接口实现串行通信的接口就是串行接口第15页,共73页,2023年,2月20日,星期三6.1串行接口和串行通信可编程串行接口的典型结构第16页,共73页,2023年,2月20日,星期三6.2可编程串行通信接口8251A可以工作在同步或异步方式。在同步方式时,能用5、6、7或8位代表字符能自动检测同步字符,允许奇偶校验。在异步方式下能用5、6、7或8位代表字符,用1位作为奇偶校验。能增加1个启动位能增加1个、1.5个或2个停止位。波特率:异步最高为19.2K,同步最高为64K。完全双工、双缓冲器发送和接收器。错误检测:具有奇偶、溢出和帧错误等检测电路。6.2.18251A的基本性能第17页,共73页,2023年,2月20日,星期三6.2.28251A的基本工作原理1.8251A的功能结构由7个模块组成。8251A的内部工作原理见下图所示。第18页,共73页,2023年,2月20日,星期三6.2.28251A的基本工作原理第19页,共73页,2023年,2月20日,星期三6.2.28251A的基本工作原理2.8251A的发送和接收第20页,共73页,2023年,2月20日,星期三6.2.28251A的基本工作原理第21页,共73页,2023年,2月20日,星期三6.2.28251A的基本工作原理第22页,共73页,2023年,2月20日,星期三6.2.38251A的对外信号8251A和CPU之间的连接信号片选信号数据信号读/写控制信号收发联络信号图6.68251A与CPU及外设的连接关系第23页,共73页,2023年,2月20日,星期三6.2.38251A的对外信号C/D、RD、WR的编码和对应的操作第24页,共73页,2023年,2月20日,星期三6.2.38251A的对外信号8251A与外设之间的连接信号

数据信号调制解调器的联络信号第25页,共73页,2023年,2月20日,星期三6.2.48251A的编程1.8251A的初始化硬件或软件设置复位复位之后的第一个奇地址第26页,共73页,2023年,2月20日,星期三6.2.48251A的编程2.模式寄存器的格式D7D6D5D4D3D2D1D0字符长度00:5位01:6位10:7位11:8位波特率系数00:同步方式01:异步X110:异步X1611:异步X64奇偶校验X0:无校验01:奇校验11:偶校验SYN?同步控制X0:内同步X1:外同步0X:两同步字符1X:单同步字符Y帧控制00:不确定01:1停止位10:1.5停止位11:2停止位N异步:8位数据,1位起始位,2位停止位,奇校验,因子是16。指定通信方式及数据格式第27页,共73页,2023年,2月20日,星期三6.2.48251A的编程4.控制寄存器的格式EHIRRTSERSBRKRXEDTRTXEN发送允许0:屏蔽1:允许接收允许0:屏蔽1:允许数据终端准备好1:迫使DTR输出低送中止字符1:迫使TXD输出低0:正常工作错误标志复位1:全部错误标志复位请求发送1:迫使RTS输出低内部复位1:返回方式指令格式外部搜索方式1:启动搜索同步字符使8251内部复位?第28页,共73页,2023年,2月20日,星期三6.2.48251A的编程5.状态寄存器的格式DSRSYNDETFEOEPETXERXRDYTXRDY与引脚TXRDY有差别奇偶错误溢出错误帧错误(仅异步)与8251的同名引脚同定义第29页,共73页,2023年,2月20日,星期三例3:若要查询8251A接收器是否准备好,可用下列程序实现:

MOV

DX,3FAH

;状态口NEXT:IN

AL,DX

;读状态口

AND

AL,02H

;查询D1=1?

JZ

NEXT

;未准备好,转NEXT等

MOV

DX,3F8H;数据口地址送DXIN

AL,DX

6.2.48251A的编程例4:接收时检查出错信息:

MOV

DX,3FAH

;状态口NEXT:IN

AL,DX

;读状态口

TEST

AL,38H

;查询是否有三类错误

JNZERROR

;有,跳转第30页,共73页,2023年,2月20日,星期三6.2.58251A编程举例MOVDX,3FAHMOVAL,7AH;送模式字OUTDX,ALMOVAL,15H;设控制字OUTDX,AL1.异步模式下的初始化程序举例例5:设8251A工作于异步方式,波特率系数为16,具有7位数据位,1位停止位,偶校验,发送、接收允许,设端口地址为3F8H和3FAH,试编程初始化。第31页,共73页,2023年,2月20日,星期三6.2.58251A编程举例2.同步模式下的初始化程序举例例6:设8251A工作于同步方式,控制口的端口地址为3FAH,采用双同步字符,同步字符为16H,奇校验,7位数据位,试编程初始化。MOV

DX,3FAH

MOV

AL,00011000B;模式字OUT

DX,ALMOV

AL,16HOUT

DX,AL;送第一个同步字符16HOUT

DX,AL;送第二个同步字符16HMOV

AL,97H;设置操作命令字OUT

DX,AL第32页,共73页,2023年,2月20日,星期三6.2.58251A编程举例MOVDX,209HMOVAL,7BHOUTDX,ALMOVAL,14HOUTDX,AL3.使用查询式接收数据,要求:异步方式,波特率因子是64,7个数据位,偶校验,1个停止位,地址是208H,209H。LOP: INAL,DX TESTAL,02H JZLOP MOVDX,208H INAL,DX第33页,共73页,2023年,2月20日,星期三6.2.68251A的使用实例图6.12用8251A作为CRT接口的实际例子第34页,共73页,2023年,2月20日,星期三6.2.68251A的使用实例INIT:XORAX,AXMOVCX,0003MOVDX,00DAHOUT1:CALLKKK LOOPOUT1 MOVAL,40HCALLKKK MOVAL,4EH CALLKKK MOVAL,27H CALLKKK

……KKKprocOUTDX,ALPUSHCX MOVCX,0002ABC:LOOPABC POPCX RETKKKendp第35页,共73页,2023年,2月20日,星期三6.2.68251A的使用实例往CRT输出一个字符的例子CHAROUT: MOV DX,0DAHSTATE: IN AL,DX TEST AL,01 JZ STATEMOV DX,0D8H POP AXOUT DX,AL

第36页,共73页,2023年,2月20日,星期三8251A实验用到8253A的程序片段:datasegmentinportequed4llh-280hio8253aequioport+280hio8253bequioport+283hio8251aequioport+2b8hio8251bequioport+2b9hmes1db‘youcanplayakeyonthebeybord!’, 0dh,0ah,24hmes2ddmes1dataendscodesegmentassumecs:code,ds:datastart: movax,data movds,ax movdx,io8253b moval,16h outdx,al movdx,io8253a moval,52 outdx,al给8251送三个0,一个40H进行复位。对8251进行初始化:先送模式字,再送控制字。显示上述字符串。以下为发送数据程序段:查询TXRDY状态位。从键盘输入字符,并判断是否为ESC(表示退出程序)。发送数据,并延时。以下为接收数据程序段:查询RXRDY状态位。接受数据并显示。子程序编写。第37页,共73页,2023年,2月20日,星期三movdx,

;初始化8251

?

movcx,03;向8251控制端口送3个0next:callout1

loopnext

moval,

;向8251控制端口送?,使其复位

callout1

moval,

;设置为1个停止位,8个数据位,波特率因子为16

callout1moval,

;向8251送控制字允许其发送和接收

callout1

ldsdx,mes2;显示提示信息

movah,09

int21h对8251进行软件复位。对8251进行初始化:先送模式字,再送控制字。显示上述字符串。第38页,共73页,2023年,2月20日,星期三waiti:movdx,?

inal,dx

testal,

;发送是否准备好

waiti

movah,01;是,从键盘上读一字符

int21h

cmpal,27;若为ESC,结束

movdx,?

incal

;发送

movcx,0F00hs51:loop?以下为发送数据程序段:查询TXRDY状态位。从键盘输入字符,并判断是否为ESC(表示退出程序)。发送数据,并延时。第39页,共73页,2023年,2月20日,星期三next:movdx,?

testal,

;检查接收是否准备好

jznext;没有,等待

movdx,?

;准备好,接收

movdl,al

movah,02;将接收到的字符显示在屏幕上

int21h

jmp

?exit:movah,4ch;退出

int21h以下为接收数据程序段:查询RXRDY状态位。接受数据并显示。第40页,共73页,2023年,2月20日,星期三out1procnear;向外发送一字节的子程序

pushcx

movcx,0F00hgg:loop

;延时

popcx

?out1

?code

start子程序的编写。第41页,共73页,2023年,2月20日,星期三6.4并行通信和并行接口并行通信:是指利用多条数据传输线将一个数据的各位同时传送。实现并行通信的接口就是并行接口。串行通信:利用一条传输线将数据一位位地顺序传送。方式数据线数使用串行一条数据线速度慢、远距离并行数据的位数速度快、近距离第42页,共73页,2023年,2月20日,星期三6.4并行通信和并行接口典型的并行接口和外设连接的示意图。使用查询方式使用中断方式T2T1数据输入准备好T3AL第43页,共73页,2023年,2月20日,星期三6.4并行通信和并行接口典型的并行接口和外设连接的示意图。使用查询方式使用中断方式T2T1输出准备好T2ALT3第44页,共73页,2023年,2月20日,星期三6.5.18255A的内部结构8255A的内部结构第45页,共73页,2023年,2月20日,星期三6.5.28255A的芯片引脚信号A1A0说明00A端口01B端口10C端口11控制第46页,共73页,2023年,2月20日,星期三6.5.38255A的控制字8255A有两种控制字:工作方式选择控制字端口C的按位置位/复位控制字

第47页,共73页,2023年,2月20日,星期三6.5.38255A的控制字1.方式选择控制字(D7=1)第48页,共73页,2023年,2月20日,星期三6.5.38255A的控制字例7:要求:地址为200H~203HA端口:方式1输入C端口上半部:输出,C口下半部:输入B端口:方式0输出方式控制字:10110001B或B1H初始化的程序段:

MOVDX,203H ;控制端口为203H

MOVAL,0B1H ;方式控制字

OUTDX,AL ;送到控制端口第49页,共73页,2023年,2月20日,星期三例8:8255与系统连线如图,片选译码地址为FFF0h1)确定各端口地址?2)编程设置8255:A口方式0输入,PC7~PC4输出

B口方式0输出,PC3~PC0输入resetD7~D0A15~A2A1A0IORIOW片选译码数据缓冲器读写控制片内译码RESETA1A0PC7PC0PB7PB0控制口端口A端口C端口B+5VGNDD7~D0外设RDWRCSPA7PA06.5.38255A的控制字第50页,共73页,2023年,2月20日,星期三6.5.38255A的控制字2.端口C置1/置0控制字(D7=0)注意:此控制字必须写入控制口0000第51页,共73页,2023年,2月20日,星期三例9:通过控制口置PC2为0,置PC4为1解:MOVDX,0203H;置DX为控制口地址

MOVAL,00000100B;置PC2为0

OUTDX,ALMOVAL,00001001B;置PC4为1

OUTDX,AL

6.5.38255A的控制字地址为200H~203H第52页,共73页,2023年,2月20日,星期三6.5.38255A的控制字例10:设8255A的4个端口地址分别为0C0H、0C1H、0C2H和0C3H,要求用按位置位/复位控制字使PC6输出方波信号,试编程实现。

MOV DX,0C3H MOV AL,80H OUT DX,ALL1:MOV AL,0CH OUT DX,AL NOP NOP MOV AL,0DH OUT DX,AL NOP NOP JMP L1第53页,共73页,2023年,2月20日,星期三例11:设8255的A端口工作于方式1输入,B端口工作于方式0输出,置PC4=H,(8255的操作地址为60H-63H)MOVAL,0B0H;1011000XOUT63H,AL;写方式控制字

MOVAL,09H;0XXX01001OUT63H,AL

;写置/复位控制字b7b6b5b4b3b2b1b0

1011

000

xb7b6b5b4b3b2b1b00

x

x

x1001C口置/复位控制字工作方式控制字6.5.38255A的控制字第54页,共73页,2023年,2月20日,星期三6.5.38255A的控制字

工作方式命令——指定8255A的3个端口的工作方式,必须初始化。

按位置位/复位命令——只对PC口的输出进行控制,可放到初始化程序的任何地方。

特征位的设置——D7=1,为工作方式命令;D7=0为按位置位/复位命令。按位置位/复位命令代码只能写入命令口。关于两个控制字的讨论:第55页,共73页,2023年,2月20日,星期三6.5.38255A的控制字初始化编程:一个方式控制字采用控制I/O地址:A1A0=11工作过程中:通过数据端口对外设数据进行读写数据读写利用端口A、B和C的I/O地址,A1A0依次等于00、01、10第56页,共73页,2023年,2月20日,星期三6.5.48255A的工作方式8255A的工作方式有三种:方式0:基本输入输出方式方式1:选通输入输出方式方式2:双向选通传送方式A端口有三种工作方式 方式0、方式1、方式2

B端口有二种工作方式 方式0、方式1

C端口无工作方式选择 工作于方式0,或作为A、B端口工作于方式1、2时的联络信号第57页,共73页,2023年,2月20日,星期三6.5.48255A的工作方式相当于三个独立的8位简单接口。各端口既可设置为输入口,也可设置为输出口,但不能同时实现输入及输出。C端口可以是一个8位的简单接口,也可以分为两个独立的4位端口。常用于连接简单外设(适于无条件或查询方式)。1.方式0第58页,共73页,2023年,2月20日,星期三例12:用8255A控制三个发光二极管依秩序循环显示。

8255AA0A1CS+5V200译码器D7~D0地址线8086CPUA0A1A0

PA0PA1PA2端口地址:340H-343H6.5.48255A的工作方式第59页,共73页,2023年,2月20日,星期三6.5.48255A的工作方式例13:8255A作为连接打印的查询式接口,工作于方式0,设8255A的端口地址为:A端口:00D0H,B端口:00D2H,C端口:00D4H,控制口:00D6H。8255A作为打印机接口的示意图

开始8255A初始化

BUSY=0?送数STB置0延时再置1STB置1送完?结束YNYN第60页,共73页,2023年,2月20日,星期三6.5.48255A的工作方式方式1的特点:端口A、B可分别工作在方式1。端口C配合方式12.方式1第61页,共73页,2023年,2月20日,星期三数据选通信号表示外设已经准备好数据输入缓冲器满信号表示A口已经接收数据中断请求信号请求CPU接收数据PC4PC5PC3PA7~PA0INTEAIBFAINTRASTBA中断允许触发器由PC4控制端口A方式1作输入:6.5.48255A的工作方式第62页,共73页,2023年,2月20日,星期三6.5.48255A的工作方式8255工作于方式1下输入时序第63页,共73页,2023年,2月20日,星期三例14:8255A端口A工作在方式1,A口输入,允许A口中断,编写初始化程序。

MOVDX,P

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论