微机原理及接口技术.ppt

上传人:牧羊曲112 文档编号:5975754 上传时间:2023-09-10 格式:PPT 页数:74 大小:1.21MB
返回 下载 相关 举报
微机原理及接口技术.ppt_第1页
第1页 / 共74页
微机原理及接口技术.ppt_第2页
第2页 / 共74页
微机原理及接口技术.ppt_第3页
第3页 / 共74页
微机原理及接口技术.ppt_第4页
第4页 / 共74页
微机原理及接口技术.ppt_第5页
第5页 / 共74页
点击查看更多>>
资源描述

《微机原理及接口技术.ppt》由会员分享,可在线阅读,更多相关《微机原理及接口技术.ppt(74页珍藏版)》请在三一办公上搜索。

1、第8章串行接口技术,本章教学目的与要求,掌握串行通信的基本概念了解串行通信的通信方式掌握串行通信的数据格式和差错检测了解信号的调制和解调了解串行通信RS-232、RS-422A、RS-485接口标准掌握8215A的主要功能、编程结构、引脚信号和控制字格式及用法能利用串行通信接口进行相关的数据传输应用,8.1串行通信的概念 8.2串行通信物理接口标准8.3 可编程异步通信接口芯片8251A,8.1串行通信的概念,8.1.1 串行通信及特点计算机与外设或其他计算机之间的信息交换称为数据通信。数据通信方式有两种:并行通信和串行通信。并行通信方式中,需要传输的各位数据同时传送,有多少位数据,就需要多少

2、根数据传输线。串行通信方式中,把数据的字节分解为单个的二进制位在一条信号线上一位一位顺序传送。由于并行通信时数据的各个位同时传送,可以以字或字节为单位进行并行传输。因此并行通信传输速度快,但传输线数量多、成本高,易引起干扰,可靠性差,故适合传输效率高、传输距离较短的场合。串行通信传输数据一位接一位地在一条传输线上顺序传送,能够节省传输线,比较经济,但传送速度较慢,效率低,适合数据位数多且远距离数据传送的场合。图8.3为这两种通信方式的示意图。,图8.3 两种通信方式的示意图。,8.1.2 两种串行通信方式,按照串行数据的时钟控制方式,串行通信可分为异步串行通信和同步串行通信两种。1异步串行通信

3、ASYNC(Asynchronous Data Communication)异步串行通信又称为起止异步方式通信,是计算机中常用的数据信息传输方式。发送端在一个字符正式发送前先发送一个起始位,然后发送有效字符,在字符发送结束时再发送一个停止位,起始位至停止位构成一帧。异步串行通信的帧格式如图8.4所示。,图8.4 异步通信的字符帧格式,(1)异步串行通信的数据格式异步串行通信传输的每个字符由一个起始位(Start Bit)作为数据开始传送的标志,起始位采用低电平。紧跟在起始位后的是58位的被传送字符的有效数据位,传送时按照低位在前高位在后的顺序依次传送,数据位数的选择可由硬件或软件来设定。数据位

4、传送完后可以选择一位奇偶校验位,用来校验数据的传输是否正确,奇偶校验位可以采用奇校验或偶校验,也可以不设置校验位。最后必须有停止位,标志着传送一个字符的结束,停止位的长度为1位、1.5位或2位,停止位采用高电平。,例题:试画出用异步串行通信协议传送字符“B”的波形图,要求加偶校验位和一位停止位。解:字符“B”的ASCII的码为42H,其传送波形图如图8.5所示。图8.5 异步协议传输ASCII字符“B”的格式,(2)波特率串行通信中数据传输速率用波特率(Baud Rate)来表征。所谓波特率,是指单位时间内传送二进制数据的位数,用bps(位/秒,bit/s)来表示。波特率是衡量串行数据传输速度

5、快慢的重要指标和参数,波特率越高,数据传输速率越快。16倍波特率时钟的采样过程如图8.6所示。,图8.6 16倍波特率时钟的采样过程,(3)异步传输中的差错检测由于线路或程序出错等原因,使得在通信过程中可能产生传送错误。异步通信中接收方通常可检测到如下一些错误:奇偶校验错(Parity Error)超越错(Overrun Error)帧格式错(Frame Error)采用异步通信方式的优点是控制简单,不需要收发双方的时钟频率保持完全一致,可以有偏差,纠错方便。缺点是一旦传输出错,则需要重新发送,由于包含起始位和停止位,传输效率低,信息冗余大。,2同步串行通信SYNC(Synchronous D

6、ata Communication)图8.7(a)为单同步字符帧格式,图8.7(b)为双同步字符帧格式,图8.7(c)为外同步字符帧格式。图8.7 同步通信的字符帧格式,8.1.3 串行通信的数据传送方式,在串行通信中,数据在通信线路上进行传输,根据数据流的传送方向可分为单工方式、半双工方式和全双工方式三种。1单工方式(Simplex)图8.8 单工方式,2半双工方式(Half Duplex)图8.9 半双工方式,33、全双工方式(Full Duplex)图8.10 全双工方式,8.1.4信号的调制和解调,串行通信中传输的数据都是以“0”“1”序列组成的数字信号。它包含了从低频到高频范围很宽的

7、谐波信号,因此在传输线上传输时要求线路的频带也很宽,否则会产生严重的信号失真。在长距离通信时,为了降低成本,常常采用普通电话线路进行传输,但普通电话线路的频带宽度有限,一般只有3003000Hz,其频带特性如图8.11所示。,图8.11 电话线路的频带特性,在发送端利用调制器(Modulator)把要传送的数字信号调制转换为能在电话线路上传输的音频模拟信号,这个过程称为调制。在接收端利用解调器(Demodulator)将接收到的音频模拟信号转换为数字信号,这个过程称为解调。如图8.12所示,图中MODEM为调制解调器。图8.12 远程通信示意图,8.1.5 串行通信的校验方法,校验是串行通信中

8、必不可少的重要环节,也是衡量通信系统对差错控制能力的重要指标。常用的校验方法有:奇偶校验、循环冗余校验CRC(Cyclic Redundancy Check)和方阵码校验等。奇偶校验是最简单最常用的校验方法。它的基本原理是在发送数据时,在其最末位后加一位奇偶校验位,如图8.13所示。,图8.13 在发送时产生奇偶校验位的电路图8.14 在接收时的奇偶校验电路,8.1.6 串行通信的实现方法,串行传送时数据是一位一位依次顺序传送的,而在计算机中数据是并行的,所以当数据由计算机送至数据终端时,要先把并行的数据转换为串行的数据再传送,而在计算机接收终端送来的数据时,要先把串行的数据转换为并行的数据才

9、能处理加工。常用的串行通信实现方法是使用硬件接口电路。,串行接口与CPU及外设的连接如图8.15所示。图8.15 CPU通过串行接口与外部设备的连接,1)通用异步收发器UART典型的UART接口的基本结构如图8.16所示。图8.16 典型的UART接口的基本结构,UART接口主要包括:(1)输出缓冲寄存器(2)输出移位寄存器(3)输入移位寄存器(4)输入缓冲寄存器(5)控制寄存器(6)状态寄存器,UART的工作流程可以分为接收过程和发送过程两部分。发送过程:CPU发来的有效数据写入接口的输出缓冲寄存器,输出缓冲寄存器将数据送到输出移位寄存器,同时将状态寄存器中的“发送准备好”位置1,并向CPU

10、发出中断申请(用中断方式时),表示接口可以接收CPU写入下一个有效数据。接收过程:接收控制电路不断检测串行数据线上的电平,一旦出现持续一个位周期的低电平(指异步方式),则开始采样有效数据位,并将采集到的数据送入输入移位寄存器。采样重复进行,直到采样到停止位。接收控制逻辑对接收到的数据进行奇偶校验,若不正确,则将状态寄存器中奇偶校验错误状态位置1;若正确,则将有效数据位并行送入输入缓冲寄存器。,图8.17 典型的串行USRT的基本结构,2)通用同步收发器USRT典型的串行USRT的基本结构如图8.17所示。,8.2串行通信物理接口标准,串行通信的物理接口标准包括连接电缆的机械特性、电气特性、协议

11、功能及传送过程的定义,它属于ISO/OSI体系结构中的最底层物理层,为链路层提供透明的位流传输实体,并规定了传输数据位的硬件规则。串行通信接口电路经过使用和发展,目前常用的有RS232C、RS422A、RS485等标准,这里介绍几种接口标准。,8.2.1RS232C串行接口标准,RS-232C标准(协议)的全称是EIA-RS-232C标准,它是在1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。其中EIA(Electronic Industry Association)代表美国电子工业协会,RS(Recommended Stan

12、dard)代表推荐标准,232是识别代号,C代表RS-232的最新一次修改(1969),在这之前有RS-232B、RS-232A。它规定了连接电缆的机械特性、电气特性、信号功能及传送过程。目前在PC机上的COM1、COM2接口,就是RS-232C接口。,1RS-232C的接口信号标准的D型25针连接器各引脚的排列如图8.18所示。图8.18 RS-232C引脚图,发送数据TXD:串行数据通过TXD终端由DTE向DCE发送。接收数据RxD:通过RXD终端接收DCE发送的数据。请求发送RTS:用来表示DTE准备向DCE发送数据。允许发送CTS:用来表示 DCE 准备好接收 DTE 发来的数据。RT

13、S/CTS请求应答联络信号是用于半双工MODEM系统中发送方式和接收方式之间的切换。在全双工系统中,因配置双向通道,故不需要RTS/CTS联络信号,使其变为高电平。数据终端就绪DTR:数据终端设备准备就绪。数据准备就绪DSR:数据装置准备好信号。DTR和DSR这两个信号有时连到电源上,一上电就立即有效。目前有些RS-232C接口甚至省去了用以指示设备是否准备好的这类信号,认为设备是始终都准备好的。可见这两个设备状态信号有效,只表示设备本身可用,并不表示通信链路可以开始进行通信了。信号地SG:所有的信号都要通过信号地线构成回路。载波检测DCD:用来表示DCE已经接通通信链路。振铃指示RI:当MO

14、DEM接收到振铃呼叫信号时,使该信号有效。发送器时钟TXC:控制数据终端发送串行数据的时钟信号。接收器时钟RXC:控制数据终端接收串行数据的时钟信号。数据信号检测和数据信号速率选择:用于指示信号质量和选择传输速率。,2、RS232C的连接和使用RS232C的传输距离短,一般小于15米,当进行15米以上远距离通信时,需要使用调制解调器MODEM。(1)远距离通信连接方式如图8.19所示。(a)采用MODEM和专用线通信时信号线的连接,(b)采用MODEM和电话网通信时信号线的连接图8.19 采用MODEM时信号线的连接,(2)近距离通信的连接RS232C连线如图8.20(a)所示。(a)(b)图

15、8.20 零MODEM方式的最简单连接图8.20(b)中,为了满足全双工通信的联络控制要求,将RTS和CTS互接,用请求发送信号RTS来产生允许发送信号CTS,这样的连接方式表明请求传送总是允许的。同样的,将DTR和DSR互接,用户数据终端准备好信号产生数据装置准备好信号。,3RS232C的电气特性RS232C接口标准对逻辑电平和各种信号线功能都作了规定:在数据发送TxD和数据接收RxD信号线上,-3V-15V的电平表示逻辑1(MARK),+315V的电平表示逻辑0(SPACE)。而在请求发送RTS、允许发送CTS、数据准备就绪DSR、数据终端就绪DTR和载波检测DCD等控制和状态信号线上,+

16、3V+15V的电平表示信号有效(接通,ON状态,正电压),-3V-15V表示信号无效(断开,OFF状态,负电压)。EIA-RS-232C是用正负电压来表示逻辑状态,与TTL以高低电平表示逻辑状态的规定不同。因此,为了能够同计算机接口或终端的TTL器件连接,必须在EIA-RS-232C与TTL电路之间进行电平和逻辑关系的变换。,图8.22 EIA-RS-232C电平转换器的连接,8.2.2 RS422A接口标准,RS422A 标准是一种平衡传输方式的串行接口标准,它的数据信号采用差分传输方式,使用一对双绞线,将其中一线定义为A,另一线定义为B,发送端和接收端分别采用平衡发送器和差动接收器连接,从

17、根本上消除了信号地线,这相当于两个单端驱动器,图8.24所示为平衡驱动差分接收电路。图8.24 RS422A平衡驱动差分接收电路,8.2.3 RS485标准,RS485是RS422A标准的变型,它与RS422A都是采用平衡差分电路,区别在于按照上述的工作要求,RS485为半双工工作方式,因此可以采用一对平衡差分信号线来连接。由于任何时候只能有一点处于发送状态,因此发送电路必须由使能信号加以控制。RS485用于多点互联时非常方便,可以省掉很多信号线。RS485允许在电路中有多个发送器,也允许一个发送器驱动多个负载设备。由于RS485与RS422A的驱动/接收电路区别不大,因此许多情况下RS485

18、与RS422A可以互连。如图8.25所示,在环形网络系统中,采用RS485/422A可以构成数据链路系统。,图8.25 环形数据链路系统,RS485标准的特点:(1)抗干扰能力强。(2)传输速率高。(3)传输距离远。(4)能实现多点对多点的通信。,8.3 可编程异步通信接口芯片8251A,CPU利用串行通信接口与外部进行数据传输,必须通过串行接口电路来实现。串行通信接口电路的基本任务包括:实现串行数据格式化。进行串并转换。数据传输速率的控制。能进行错误检测。实现TTL与EIA电平转换。实现计算机与通信设备之间的信号联络与控制。,可编程串行接口芯片8251A概述,8251A是通用同步/异步收发器

19、USART(Universal Synchronous Asynchronous Receiver/Transmitter),它是专为Intel 微处理器设计的,具有同步、异步接收或发送的功能,可用作CPU和串行外设的接口电路。其功能是:(1)通过编程,可以工作在同步方式下,也可以工作在异步方式下,字符位数为 5-8 个;(2)在同步方式下,波特率为 064K;异步方式下,波特率为019.2K;(3)同步传输时,可以用 5、6、7或8位来表示一个字符,并且内部能自动检测同步字符,从而实现同步。除此之外,8251A 也允许同步方式下增加奇/偶校验位进行校验。(4)异步传输时,也可以用5、6、7或

20、8位来表示一个字符,时钟频率为传输波特率的1、16或64倍,用1位作为奇/偶校验,1个启动位,并能根据编程为每个数据增加1个、1.5个或2个停止位。(5)具有奇偶错、数据丢失和帧错误检测能力;。,18251A的内部结构8251A的内部结构方框图如图8.27所示。8251A主要由数据总线缓冲器、接收器、发送器、读/写控制逻辑和调制解调控制逻辑等电路组成,内部总线实现各部件相互间的通信。,图8.27 8251A的内部结构,28251A的引脚信号作为CPU与外部设备(或调制解调器)之间的接口,8251A的对外引脚信号分为两组,一组是8251A与CPU之间的信号,一组是8251A与外部设备(或调制解调

21、器)之间的信号。图8.28是8251A与外部设备及CPU之间的引脚示意图。8251A的引脚如图8.29所示。,图8.28 8251A与外部设备及CPU之间的引脚示意图,图8.29 8251A的引脚图,(1)8251A与CPU之间的连接信号CS:片选信号,输入,通常由系统地址总线的高位地址经过地址译码器产生。D7D0:数据总线,双向,三态。RD:读信号,输入,与系统总线的读信号相连。WR:写信号,输入,与系统总线的写信号相连。C/D:控制/数据寄存器选择信号,输入,用来区分当前读/写的是数据还是控制信息或状态信息。RD、WR、C/D与读写操作之间的关系如表8-3所示。,表8-3 8251A端口基

22、本操作,TXRDY:发送器准备好信号,输出,高电平有效。TXE:发送器空信号,输出,高电平有效。RXRDY:接收器准备好信号,输出,高电平有效。SYNDET:复用双功能引脚,同步/中止检测信号,双向。同步方式时,为同步检测信号SYNDET。异步方式时,该引脚作为中止信号检测BD,输出。当检测到中止字符后,输出高电平。,(2)8251A与外部设备之间的连接信号DTR:数据终端准备好信号,输出,低电平有效。DSR:数据设备准备好信号,输入,低电平有效。RTS:请求发送信号,输出,低电平有效。CTS:清除请求发送信号,输出,低电平有效。TXD:发送器数据信号端,用来输出数据。RXD:接收数据信号端,

23、用来接收外部设备送来的串行数据。RXC:接收器时钟,用来控制接收器接收数据的速率。TXC:发送器时钟。用来控制8251A的发送数据的速率。CLK(Clock):时钟,用来产生8251A的内部时序。,8.3.2 8251A的编程对8251A的初始化编程主要包括方式选择控制字、操作命令控制字。1方式选择控制字方式选择控制字是在复位后写入,用于选择8251A的工作方式(同步方式、异步方式)和数据格式。方式选择控制字写入8251A的控制口(奇地址端口),格式和定义如图8.30所示。,图8.30 8251A的方式选择控制字,D1D0:波特率因子选择。D3D2:数据位的位数(不包括奇偶校验位)。D4:是否

24、需要奇偶校验。D5:奇偶校验类型。D7D6:含义因工作方式而异。,例题:在某异步通信中,数据格式采用8位数据位,1个起始位,1个停止位,偶校验,波特率因子为64,其方式选择控制字为01111111B=7FH。将方式选择控制字写入控制口,则程序段为MOVDX,209H;8251A控制口地址MOVAL,7FH;方式选择控制字,异步方式OUTDX,AL;写方式选择控制字例题:某同步通信中,若帧数据格式位:字符长度为8位,双同步字符,内同步方式,奇校验,则方式选择控制字为00011100B=1CH。将方式选择控制字写入控制口,则程序段为:MOVDX,209H;8251A控制口地址MOVAL,1CH;方

25、式选择控制字,同步方式OUTDX,AL;写方式选择控制字,2操作命令控制字操作命令控制字的作用是确定8251A的数据传送方向及与传送方向相适应的工作状态。操作命令控制字写入8251A的控制口(奇地址端口),格式和定义如图8.31所示。图8.31 8251A的操作命令控制字,D0:允许发送位TXEN(Transmit Enable)。D1:数据终端准备就绪DTR。D2:允许接收位RXE(Receive Enable)。D3:发送中止断点字符位SBRK(Send Break Character)。D4:清除错误标志位ER(Error Reset)。D5:请求发送位RTS(Request To Se

26、nd)。D6:内部复位位IR(Internal Reset)。D7:进入搜索方式EH(Enter Hunt Mode),只对同步方式有效。,3状态字8251A执行CPU的各种命令,将数据传送时建立的各种状态存放在状态寄存器中,称为状态字。CPU可以在8251A工作过程中利用输入命令读取8251A当前的状态字,从而了解8251A接口和数据传输的工作状态。8251A状态字的格式如图8.32所示。图8.32 8251A的状态字,8251A状态字中D1、D2、D6、D7位的含义与8251A同名引脚定义相同,这里不再赘述。D3:奇偶校验错PE(Parity Error)。D4:溢出错OE(Overrun

27、 Error)。D5:格式错FE(Framing Error),只用于异步方式。出现这三种错误时都不会终止8251A的操作,可以通过操作命令字中的ER来复位。,例题:查询8251A的发送器是否准备好,试写出相应程序段。MOV DX,209H;状态口地址START:IN AL,DX;读取状态字ANDAL,01H;D0=1?JZ START;若未准备好,则等待MOVDX,208H;数据口地址MOVAL,0FFHOUTDX,AL;发送字符写入8251A,4、8251A的初始化编程8251A可以工作在不同的方式下,因此需要在使用之前进行初始化编程,以确定其通信方式、传送方向、数据格式和传送速率等。初始

28、化编程是通过写入方式选择控制字、操作命令控制字和同步字符来实现的。初始化流程如图8.33所示。,图8.33 8251A初始化流程,例题:设定8251A工作于异步方式,波特率因子为16,每个字符8个数据位,偶校验,2位停止位,则方式选择控制字为11111110B=FEH。操作命令控制字设定,设定使8251A的发送器允许,接收器允许,使状态寄存器中的3个错误标志位复位,使数据终端准备好信号DTR输出低电平,则操作命令控制字为00010111B=17H。假设8251A的端口地址为208H、209H,则8251A的初始化程序如下:MOVDX,209HMOVAL,0FEH;输出方式选择控制字OUTDX,

29、ALMOVAL,17H;输出操作命令字OUTDX,AL,综合应用实例/应用实例和实例分析:,11、利用8251A实现与终端之间的串行通信终端通常包括键盘和显示器,因此计算机与终端之间需要进行双向通信。这里以8251A为主要部件,计算机通过串行接口与键盘和显示器终端的连接如图8.34所示。图8.34 8251A与键盘-显示器终端之间串行通信的电路连接,8251A与键盘、显示器之间进行数据通信,从键盘输入一个字符,并立即将该字符送到显示器进行显示。采用异步串行通信方式,数据格式为1位停止位,8位数据位,偶校验,波特率系数为16,则8251A的方式选择控制字为01111110B=7EH,操作命令控制

30、字为00110111B=37H。对8251A进行初始化和接收、发送控制程序如下:CODE SEGMENTASSUME CS:CODESTART:MOVDX,209H;控制口地址MOVAL,00H;空操作OUTDX,ALMOVAL,40H;内部复位(使D6=1)OUTDX,ALNOPMOVAL,7EH;方式控制字(异步,1位停止位,字符长度为8位,波特率因子为16,偶校验)OUTDX,ALMOVAL,37H;控制命令字(RTS、ER、RXE、DTR、TXEN均置位)OUTDX,AL STATE1:INAL,DX;读取状态字TESTAL,02H;查状态位D1(RXRDY)是否为1,JZ STATE

31、1;若未准备好,则继续查询MOVDX,208H;装入数据端口地址INAL,DX;接收一个字符MOVBL,AL;暂存在寄存器BL中CMPAL,1BH;测试是否ESC键JZEXIT;若输入为ESC,则退出STATE2:MOVDX,209HINAL,DX;读取状态字TESTAL,01H;查状态位D0(TXRDY)是否为1 JZSTATE2;若未准备好,则继续查询MOVDX,208HMOVAL,BLOUTDX,AL;将刚收到的字符送给显示器JMPSTATE1;准备继续接收EXIT:MOVALAH,4CHINT21H;发送完毕,返回DOSCODE ENDSEND START,2利用8251A实现两台计算

32、机之间的串行通信两台计算机近距离(不超过15米)串行通信,硬件连接如图8.35所示。甲机发送,乙机接收。由于两台计算机距离较近,因此采用无MODEM连接,每台计算机的RS232串行接口分别采用一片8251A芯片连接,通信双方均作为数据终端设备,它们之间只需TXD,RXD,SG三根线连接就能通信。由于采用的是EIA RS232接口标准,因此需要加电平转换电路。图8.35 利用8251A进行双机串行通信的硬件连接图,甲乙两台计算机可以进行半双工或全双工通信,CPU与接口之间数据传送方式可以采用查询方式或中断方式。本例中采用异步传输方式,字符长度为8位,2位停止位,波特率因子为16,偶校验,CPU与

33、8251A采用查询方式交换数据。8251A的命令/状态端口地址为209H,数据端口地址为208H。发送和接收程序流程图如图8.36所示。,图8.36 双机串行通信接口发送和接收程序流程图,(1)发送端初始化程序及控制发送程序如下(略去数据段定义):CODE SEGMENTASSUME CS:CODESTART:MOVDX,209H;控制口地址MOVAL,OOH00H;空操作OUTDX,ALMOVAL,40H;内部复位(使D6=1)OUTDX,ALNOPMOVAL,OFEH0FEH;方式控制字(异步,2位停止位,字符长度为8位,波特率因子为16,偶校验)OUTDX,ALMOVAL,37H;控制命

34、令字(RTS、ER、RXE、DTR、TXEN均置位)OUTDX,ALMOVCX,COUNT;传送字节数送CXMOVSI,OFFSETBUF;发送区首址送SI,STATE:MOVDX,209HINAL,DX;读取状态字TESTAL,01H;查状态位D0(TXRDY)是否为1 JZSTATE;若发送未准备好,则继续查询MOVDX,208H;装入数据端口地址MOVAL,SI;发送准备好,则从发送区取一字节发送OUTDX,ALINCSI;修改地址指针DECCX;字节数减1JNZSTATE;未发送完,继续发送MOVALAH,,4CHINT21H;发送完毕,返回DOSCODEENDSENDSTART,(2

35、)接收端初始化程序及控制发送程序如下(略去数据段定义):CODESEGMENTASSUMECS:CODESTART:MOVDX,209H;控制口MOVAL,O0H00H;空操作OUTDX,ALMOVAL,40H;复位(同发送程序复位)OUTDX,ALNOPMOVAL,0FEH;方式选择控制字(同发送程序)OUTDX,ALMOVAL,14H;命令控制字(ER,RX置位)OUTDX,ALMOVCX,COUNT;接收字节数MOVSI,OFFSETBUF;接收数据区首址,LABEL:MOVDX,209HINAL,DX;查询状态字TESTAL,,38HJNZERR;查询数据接收是否出错,出错则转ERRT

36、ESTAL,02H;查状态位D2(RXRDY)是否为1JZLABEL;接收未准备好,则继续查询MOVDX,208H;数据口INAL,DX;接收准备好,则接收1字节MOVDI,AL;存入接收区INCDI;修改地址指针DECCX;字节数减1LOOPLABEL;未发送完,继续JMPSTOPERR:STOP:MOVALAH,4CHINT21H;接收完毕,返回DOSCODEENDSENDSTART,本章小结,本章主要介绍了串行通信的基本概念和基础知识,串行通信传输是将数据一位接一位地在一条传输线上顺序传送。介绍了两种串行通信方式:异步串行通信和同步串行通信。异步串行通信传输中每个字符包含一个起始位、58

37、位、有效数据位、一位奇偶校验位和1位、1.5位或2位。介绍了波特率和波特率因子以及异步传输中的差错检测。同步通信方式是将数据顺序连接起来,构成一个数据块进行传输,在每个数据块的开始处加1至2位的同步字符,最后以校验字符结束。介绍了串行通信的数据传送方式:单工方式、半双工方式和全双工方式三种。介绍了信号的调制和解调,为了实现通过电话线路进行数字信号的传输,引入了调制解调器,利用调制解调器的调制和解调功能实现数据的远距离传输。在远距离通信中,为了保证信息传输的正确性,采用奇偶校验和循环冗余校验CRC等方法对数据进行校验,并介绍了数据校验原理。在串行通信的实现方法上介绍了硬件实现方法(UART、US

38、RT)两种。介绍了串行通信的物理接口标准:RS232C、RS422A、RS485等。RS-232是用于连接数据终端设备DTE与数据通信设备DCE之间的标准接口,电气特性是用正负电压来表示逻辑状态,-3V-15V的电平表示逻辑1,+315V的电平表示逻辑0,与计算机接口或终端进行连接时,需要在RS-232C与TTL电路之间进行电平和逻辑关系的变换。RS422A标准的数据信号采用差分传输方式,在干扰信号作为共模信号出现时,接收器接收差分输入电压,能识别两个信号并正确接收传送的信息。RS485标准采用差动发送/接收,传输速率高,传输距离远,能实现多点对多点的通信,在许多方面得到了广泛应用。介绍了可编

39、程异步通信接口芯片8251A的内部结构、引脚信号及与CPU和外部设备的连接方法、初始化编程和应用举例。,习题,1、串行通信的主要特点是什么?2、什么是同步通信方式?什么是异步通信方式?它们各自的特点是什么?3、什么是波特率?什么是波特率因子?4、同步通信协议有哪两种?各自的特点是什么?5、0位插入/删除技术的作用是什么?6、什么是信号的调制和解调?为什么要进行信号的调制和解调?7、奇偶校验的规则及特点是什么?8、串行通信硬件接口电路的主要功能是什么?9、串行通信的接口标准有哪些?比较它们的特点及使用场合。10、RS-232接口对远距离通信和近距离通信所使用的信号线有什么不同?为什么?11、RS

40、-232接口的信号电平采用什么逻辑?逻辑“1”和逻辑“0”电平各为多少?12、RS485标准的特点是什么?13、串行通信接口电路的基本任务有哪些?14、简述8251A的内部结构及各部分的作用。15、8251A与外部设备之间的接口信号有哪些?16、8251内部有哪些寄存器?分别举例说明它们的作用和使用方法。17、假定8251A工作于异步方式,波特率因子为16,数据位7位,奇校验,允许发送和接收数据,其端口地址为E0H,E1H。试编写初始化程序。18、设8251A的控制和状态端口地址为241H,数据端口地址为240H,采用异步方式,7位数据位,奇校验,1位停止位,波特率因子为16,试编写一个程序段

41、,采用查询方式输入100个字符,并将字符存放在BUFFER开始的缓冲区中。,17、假定8251A工作于异步方式,波特率因子为16,数据位7位,奇校验,允许发送和接收数据,其端口地址为E0H,E1H。试编写初始化程序。MOV AL,01011010BOUT E1H,ALMOV AL,00110111BOUT E1H,AL,18、设8251A的控制和状态端口地址为241H,数据端口地址为240H,采用异步方式,7位数据位,奇校验,1位停止位,波特率因子为16,试编写一个程序段,采用查询方式输入100个字符,并将字符存放在BUFFER开始的缓冲区中。MOV AL,01011010BMOV DX,241HOUT DX,AL;写方式选择控制字MOV AL,01010110BOUT DX,AL;写操作命令字MOV BX,BUFFER;接收缓冲区首地址MOV CX,100START:MOV DX,241HIN AL,DX;读状态字TEST AL,01H;检查数据接收是否准备就绪JZ START;未就绪,等待MOV DX,240H;装数据端口地址IN AL,DX;接收数据MOV BX,AL;装入数据缓冲区INC BX;修改接收缓冲区地址DEC CX;接收计数减1JNZ START;未接收完,继续接收HLT,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号