微机原理15教材_第1页
微机原理15教材_第2页
微机原理15教材_第3页
微机原理15教材_第4页
微机原理15教材_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

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

文档简介

第15章串行通信及接口电路15.1串行通信的基本概念15.1.1串行通信的特点:数据在单条1位宽的传输线上按时间先后一位一位地传送;节省传输线(优点);数据传输率较低(缺点)。主要适用于长距离、低速率的通信中。15.1.2串行通信涉及的常用术语1.单工、半双工和全双工(数据通信的方向性结构)(1)单工(Simplex)特点:仅能进行一个方向的数据传送设备A发送器设备B接收器Dataflow(2)半双工(HalfDuplex)特点:数据可以在两个方向上进行传送,但是这种传送绝不能同时进行。【双向,但不同时】设备A发送器/接收器设备B接收器/发送器Dataflow(3)全双工(FullDuplex)特点:能够在两个方向同时进行数据传送。设备A发送器/接收器设备B接收器/发送器数据传输率

每秒传输的二进制位数,单位为bps(bitpersecond)也称比特率。波特率―――每秒传输的“符号”(也称信号码元—SignalElement)的个数。【例如,每秒传送1个符号,则波特率为1波特】在计算机中,一个“符号”的含义为高、低两种电平,分别代表逻辑值“1”和“0”,所以每个符号的信息量为1比特,此时波特率与比特率刚好一致。但在其他一些场合(例如通信中采用的“相一幅”复合调制技术一个“符号”的信息含量就不是一个比特,此时,波特率就不等于比特率。标准波特率系列:50,75,110,150,300,600,1200,……

4种相位(0,90,180,270)每种相位有两种振幅值→实现3位/信号码元调制9001800002700001101011111000100110010现在的电话网是模拟通信系统,它是为传输话音信息而设计的。要在电话网上传送数字信号,必须经过调制和解调。实现调制和解调两个过程的设备称为“调制解调器”(ModulatorDemodulator-Modem)方法:选取音频范围某一频率的正(余)弦模拟信号作为载波,用以运载所要传送的数字信号。要用传送的数字信号改变载波信号的幅值、频率或相位,使之在信道上传送;到达信道另一端,再将数字信号从载波中取出。000001111数字信号(a)调幅(b)调频(c)调相按数字信号的值改变载波信号的幅度按数字信号的值改变载波信号的频率按数字信号的值改变载波信号的相位发送时钟和接收时钟数据输入寄存器输入移位寄存器÷1,÷16,÷32数据输出寄存器输出移位寄存器÷1,÷16,÷32CLK(主时钟)(串行数据输入)输入移位脉冲(串行数据输出)输出移位脉冲接收时钟发送时钟波特率因子

F(时钟频率)=波特率因子*波特率波特率因子:数据传输率(波特率)与时钟频率之间的比例系数.给定时钟频率,选择不同的波特率因子可得到不同的波特率。例如:f=19.2kHz,若选波特率因子为16,则波特率为1200bps。若选定波特率因子和波特率,则相应的确定了对时钟频率的要求。

1200*16=19200(时钟频率)→若外部时钟电路的频率F=1MHz,需用8253分频,试计算分频系数(8253的计数初值)=?8253计数初值=时钟频率/(波特率*波特率因子)[实验]

8251外部的时钟电路

÷1,÷16,…1MHzN分频19.2KHz移位脉冲CLKOUT8253异步方式与同步方式(1)异步方式(Asynchronous):也称“起止同步式”。串行异步传输数据格式:1/00011…15-8位数据位1/0停止位或空闲位1…1起始位奇偶校验第n个字符空闲位第n+1个字符低位高位(2)同步方式(Synchronous)串行同步通信信息格式同步字符(SYN1)同步字符(SYN2)数据(DATA)…同步通信的效率(协议开销)例:SDLC/HDLC帧格式:假定数据长度为2048位,通信效率为:2048/(2048+48)=97%

协议开销仅为3%一般公式:SDLC/HDLC协议开销=1.0-N/(N+48),其中N为发送数据的比特数。标志01111110地址8位控制8位CRC8位CRC8位标志01111110数据场15.5可编程串行通信接口8251AIntel8251A是通用同步/异步收发器USART(UniversalSynchronousAsynchronousReceiver/Transmitter),它是专为Intel微处理器设计的,可用作CPU和串行外设的接口电路。15.5.18251A的基本性能(1)可用于同步和异步传送。(2)同步传送:5~8位/字符;内部或外部字符同步;可自动插入同步字符。(3)异步传送:5~8位/字符;时钟速率为通信速率的1、16、64倍。

(4)异步传送时,可产生中止字(BreakCharacter);可产生1、1.5、或2位的停止位;可检测假起始位;可自动检测和处理中止字符。(5)波特率:异步:DC-19.2K;同步:DC-64K。(6)全双工、双缓冲器发送和接收。(7)差错检测:具有奇偶错、溢出错和帧格式错等差错检测电路。(8)28脚双列直插式封装。(9)全部输入输出与TTL电平兼容;单一+5V电源;单一TTL电平时钟;Intel8251APROGRAMMABLECOMMUNICATIONINTERFACEn

SynchronousandAsynchronousOperationn

Synchronous5-8BitCharacters;InternalorExternalCharacterSynchronization;AutomaticSyncInsertionn

Asynchronous5-8BitCharacters;ClockRate-1,16or64TimesBaudRate;BreakCharacterGeneration;1,1.5,or2StopBits;FalseStartBitDetection;AutomaticBreakDetectandHandling;n

SynchronousBaudRate

-DCto64KBaudn

AsynchronousBaudRate-DCto19.2KBaudn

FullDuplex,doubleBuffered,TransmitterandReceivern

ErrorDetection-Parity,OverrunandFramingn

FullyCompatiblewith8080/8085CPUn

28-PinDIPPackagen

AllInputsandOutputsareTTLCompatiblen

Single+5VSupplyn

SingleTTLClock15.5.28251A的结构与引脚功能1.8251A的引脚8251A有28条引脚,引脚分配如图15.47所示。8251AD1TxDCLKRESETDSRRTSDTRRxCVccD0TxEMPTYCTSWRTxCD7D6D5D4

GNDRxDD3CSRDC/DSYNDET/BRKDETTxRDYRxRDY211098765432111312281920212223242526271815161714D2图15.478251A的引脚信号2.8251A的结构和工作原理8251A的结构方块图如图15.48所示。由图中可看出8251A可分为5个部分。(1)接收器(2)发送器(3)数据总线缓冲器(4)调制解调器控制电路(5)读写控制逻辑电路

数据总线缓冲器读/写控制逻辑电路调制/解调控制电路接收控制电路串-并转换发送缓冲器缓冲器并-串转换发送控制电路RESETCLKC/DRDWRCSDSRDTRCTSRTSD7-D0内部总线TXDRXDTXEMPTYTXCRXRDYRXCSYNDETTXRDY发送器接收器图15.488251A内部结构框图接收15.5.38251A对外接口信号8251A是CPU与外设之间的接口电路,其对外的接口信号可分为两组:一组是与CPU的接口信号,另一组是与外设之间的接口信号(参见图15.49)。

80868251A外设D7-D0CLK译码CSABM/IOC/DRDRDWRWRTXRDYTXERXRDYSYNDETRESETDTRDSRRTSCTSTXDRXD计数器/定时器RXCTXC图15.498251A的对外接口信号1.8251A与CPU之间的接口信号(1)复位信号RESET(2)数据线D7~D0(3)读写控制信号(4)收发联络信号

8251A的读/写控制真值表CSC/DRDWR操作0001CPU从8251A读数据0010CPU往8251A写数据0101CPU从8251A读状态0110CPU往8251A写控制命令0×11D7~D0为高阻态1×××D7~D0为高阻态2.8251A与外设之间的接口信号有四个Modem控制信号DTR、DSR、RTS和CTS。另外还有四个信号,如下所述。(1)接收器时钟RXC(2)发送器时钟TXC(3)接收数据线RXD(4)发送数据线TXD本地Modem远程Modem

计算机终端123456782022101103104105106107102109108125机壳地发送数据(TXD)接收数据(RXD)请求发送(RTS)允许发送(CTS)Modem就绪(DSR)信号地(GND)载波检测(CD)终端就绪(DTR)呼叫指示载波检测呼叫指示电话线CCITT信号名插脚号图3-5V.24/RS-232C信号连接与定时关系a)信号线连接15.5.48251A的编程8251A的编程包括两个部分,一个是方式选择控制字,另一个是操作命令控制字。前者用来定义8251A的工作方式,它必须紧接在复位后由CPU写入;后者用来指定芯片的实际操作,只有在写入了方式选择控制字后,才能由CPU写入。

1.方式选择控制字方式选择控制字的格式如图15.50所示。D7D6D5D4D3D2D1D0S2S1EPPENL2L1B2B100同步方式01异步方式(X1)10异步方式(X16)11异步方式(X64)00字符长度为5位01字符长度为6位10字符长度为7位11字符长度为8位1带奇偶校验0不带奇偶校验1偶校验0奇校验异步00无效011位停止位101.5位停止位112位停止位同步111个同步字符,外同步,SYNDET为输入101个同步字符,内同步,SYNDET为输出012个同步字符,外同步,SYNDET为输入002个同步字符,内同步,SYNDET为输出图15.508251A的方式选择控制字

2.操作命令控制字操作命令控制字的格式如图15.51所示,它直接让8251A实现某种操作或进入规定的工作状态。D7D6D5D4D3D2D1D0EHIRRTSERSBRKRXEDTRTXEN1进入搜索方式1内部复位1允许发送1数据终端准备好1允许接收1发送中止字符0正常工作1清除错误标志1请求发送图15.518251A的操作命令控制字3.状态字

CPU可以在8251A工作过程中利用输入指令读取当前8251A的状态字,从而可以检测接口和数据传输的工作状态。8251A状态字的格式如图15.52所示。D7D6D5D4D3D2D1D0DSRSYNDET/BRKDETFEOEPETXEMPTYRXRDYTXRDY1发送器准备好1数据通信设备准备好帧格式错标志溢出错标志奇偶错标志1接收器准备好1发送器空SYNDETBRKDET1已达到同步0未达到同步1接收到中止字符0正常工作图15.528251A的状态字(1)三个错误标志位PE、OE和FE,PE=1是奇偶校验错;OE=1是溢出错,也称为“超越错”;FE=1是“帧格式错”,它们只对异步方式有效。出现这三种错误时都不中止8251A的工作,它们可以用操作命令字中的ER位来复位。(2)RXRDY、TXE(TXEMPTY)和SYNDET/BRKDET位与同名引脚的状态含义相同,此处不再重述。(3)DSR位是数据通信设备准备好状态位,DSR=1表示调制解调器或其他外设已处于准备好状态,此时DSR输入信号有效。(4)TXRDY是发送器准备好位,它与输出引脚TXRDY的含义有所不同。TXRDY状态位为“1”只反映当前发送缓冲器已空,而TXRDY输出引脚为“1”时,除发送缓冲器已空外,还需要以CTS=0和TXEN=1为条件,即存在如下逻辑关系:输出引脚TXRDY为“1”=发送缓冲器空·(CTS=0)·(TXEN=1)通常TXRDY状态位提供CPU查询,而TXRDY引脚的输出信号作为中断请求信号发给CPU。4.8251A的初始化及数据传送流程图8251A的初始化及数据传送流程图如图15.53所示。输出方式控制字输出第一个同步字符异步方式?是单同步?RESET输出第二个同步字符输出操作命令控制字有复位命令否?传送数据输出操作命令字或输入状态字数据完否?YNNNNYYY图15.538251A初始化和数据传送流程图8251A的初始化编程必须在复位操作之后,先设置方式选择控制字;如果设定在异步方式,则马上要输出操作命令字进行设置,然后才能进行数据传送;在数据传送过程中,也可使用操作命令字进行某些操作设置或读取8251A的状态;在数据传送结束时,若使用IR位为“1”的内部复位命令使8251A复位,则它又可重新接收方式选择字,从而改变工作方式完成其他传送任务。如果设定8251A工作在同步方式,那么在输出方式选择控制字后,应紧跟着输出一个同步字符或两个同步字符,然后再输出操作命令字,后面的操作与异步方式相同。5.编程举例(1)异步方式下的初始化编程设定8251A工作于异步方式,波特率因子为64,每字符7个数据位,偶校验,2位停止位,则方式选择控制字为11111011=FBH。

操作命令字的设定,例如使8251A的发送器允许,接收器允许,使状态寄存器中的3个错误标志位复位,使数据终端准备好信号DTR输出低电平,则操作命令字应为00010111=17H。若8251A的端口地址为50H、51H,则本例初始化程序如下:

MOVAL,0FBH;输出方式选择字

OUT51H,ALMOVAL,17H;输出操作命令字

OUT51H,AL(2)同步方式下的初始化编程举例8251A工作于同步方式,双同步字符,同步字符设定为16H,内同步,偶校验,每字符7个数据位,则方式选择字为00111000B=38H。操作命令字设定为10010111B=97H,使发送器允许,接收器允许,使错误标志复位,开始搜索同步字符,并通知调制解调器,数据终端设备已准备就绪。8251A的端口地址为50H、51H,则本例初始化程序如下:

MOVAL,38H;输出方式选择字

OUT51H,ALMOVAL,16H;输出两个同步字符16HOUT51H,ALOUT51H,ALMOVAL,97H;输出操作命令字

OUT51H,ALCPU执行上述程序之后,即完成了对8251A同步方式的初始化编程。15.5.58251A的应用1.利用8251A实现与终端的通信2.利用8251A实现双机通信利用8251A实现相距较近(不超过15米)的两台微机通信,其硬件连接如图15.55所示。由于是近距离通信,因此不用Modem,两台微机直接通过RS-232C相连即可,且通信双方均作为数据终端设备DTE;由于采用EIARS-232C接口标准,所以需要加接电平转换电路。通信时认为对方已准备好,所以可不使用四根联络信号,仅8251A的CTS接地即可。甲乙两机可进行半双工或全双工通信。CPU与接口之间可按查询方式或中断方式进行数据传送。本例采用半双工通信,查询方式,异步传送。8251ACTSDSRRxDTxCRxCCLK系统主时钟TxDRTSDTRCPU总线时钟电路甲机EIA/TTL电平转换237237DTEDTETxDTxDRxDRxDEIA/TTL电平转换8251ACTSDSRRxDTxCRxCCLKTxDRTSDTR系统主时钟乙机(DTE)CPU总线时钟电路RS-232C接口图15.55利用8251A进行双机通信硬件连接图乙机GND(1)发送端初始化程序及控制程序如下所示(设在此之前已对8251A进行了复位操作):START:MOVDX,8251A控制端口号;

MOVAL,7AH

;方式选择字,异步方式,7位数据位,1位停止位

OUTDX,AL

;偶校验,波特率因子为16

MOVAL,11H

;操作命令字,发送器允许,错误标志复位

OUTDX,ALMOVSI,发送数据块首地址;

MOVCX,发送数据块字节数;NEXT:MOVDX,8251A控制端口号;

INAL,DX;读取状态字

TESTAL,01H;查询状态位TXRDY是否为“1”

JZNEXT;发送未准备好,则继续查询

MOVDX,8251A数据端口号;

MOVAL,[SI]

;发送准备好,则从发送区取一字节数据发送

OUTDX,AL

INCSI;修改地址指针

LOOPNEXT

;未发送完,继续

HLT(2)接收端初始化及控制程序如下所示(设在此之前已对8251A进行了复位操作):BEGIN:MOVDX,8251A控制端口号;

MOVAL,7AH;方式选择字

OUTDX,ALMOVAL,14H;操作命令字

OUTDX,ALMOVDI,接收数据块首地址;

MOVCX,接收数据块字节数;L1:MOVDX,8251A控制端口号;

INAL,DX;读状态字

TESTAL,02H;查询状态位RXRDY是否为“1”

JZL1;接收未准备好,则继续查询

TESTAL,08H;检测是否有奇偶校验错

JZERR;若有错,则转出错处理

MOVDX,8251A数据端口号;

INAL,DX

;接收准备好,则接收一个字节

MOV[DI],AL;存入接收数据区

INCDI;修改地址指针

LOOPL1

;未接收完,则继续

HLT实验四参考程序datasegmentmes1db‘youcanplayakeyonthekeybord!’,0dh,0ah,24hdataendsCodesegmentassumecs:code,ds:dataOut1procnear

;向外发送一字节的子程序

outdx,alpushcxmovcx,40hgg:loopgg;延时

popcx

retout1endpstartmovax,datamovds,axmovdx,283h;

moval,16h;设置8253计数器0工作方式

outdx,al;

movdx,280hmoval,52;给8253计数器0送初值

outdx,almovdx,2b9h;初始化8251

xoral,almovcx,03;向8251控制端口送3个0delay:callout1

温馨提示

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

评论

0/150

提交评论