片机串行接口及.ppt
《片机串行接口及.ppt》由会员分享,可在线阅读,更多相关《片机串行接口及.ppt(169页珍藏版)》请在三一办公上搜索。
1、第7章51 单片机串行接口及应用,MCS-51单片机中有一个串行通信I/O口,通过该串行口可以实现与其它计算机以及外设之间的串行通信。MCS-51单片机的串行通信有着广泛的应用,不但可以实现单片机之间或单片机和PC机之间的串行通信,也可以使用单片机的串行通信接口,实现键盘输入和LED、LCD显示器输出的控制,简化电路,节约单片机的硬件资源;应用串行通信接口,还可以进行远程参数检测和控制。本章首先介绍串行通信的基础知识,然后详细介绍MCS-51单片机的串行口及其应用。,7.1串行通信概述,在实际应用中,计算机与外部设备之间,计算机与计算机之间之间常常要进行信息交换,所有这些信息的交换均称为“通信
2、”。通信的基本方式分为并行通信和串行通信两种。MCS-51单片机具有并行通信和串行通信两种通信方式,给单片机在通信中的应用带来了极大方便。,并行通信是构成数据信息的各位同时进行传送的通信方式,例如8位数据或16位数据并行传送。图7-1(a)为并行通信方式的示意图。其特点是传输速度快,缺点是需要多条传输线,当距离较远、位数又多时,导致通信线路复杂且成本高。在单片机中,一般常常用于CPU 与LED、LCD显示器的连接,CPU与A|D、D|A转换器之间的数据传送等并行接口方面。,串行通信是数据一位接一位地顺序传送。图7-1(b)为串行通信方式的示意图。其特点是通信线路简单,只要一对传输线就可以实现通
3、信(如电话线),从而大大地降低了成本,特别适用于远距离通信。缺点是传送速度慢。,由图7-1可知,假设并行传送N位数据所需时间为T,那么串行传送的时间至少为NT,实际上总是大于NT的。,在串行通信时,机内的并行数据传送到内部移位寄存器中,然后数据被移位寄存器形成串行数据,通过通信线传送到接收端,再将串行数据逐位移入移位寄存器后转换成并行数据存放在机中。进行串行通信的接收端和发送端的计算机,必须有一定的约定,必须有相同的传送速率并采用同一的编码方法,接收端的计算机必须知道发送端的计算机发送了那些信息,发送的信息是否正确,如果有错如何通知对方重新发送。发送端的计算机必须知道接收端的计算机是否正确接收
4、到信息,是否需要重新发送,这些约定称为串行通信协议或规程。通信双方遵守这些协议才能正确地进行数据通信。,串行通信的分类,按照串行通信的时钟控制方式,串行通信可分为异步传送和同步传送两种基本方式。1.异步通信(Asynchronous Communication)异步传送的特点是数据在线路上的传送不连续,在传送时,数据是以字符为单位组成字符帧进行传送的。字符帧由发送端一帧一帧地发送,每一帧数据位均是低位在前高位在后,通过传输线被接收端一帧一帧地接收。发送端和接收端可以由各自独立的时钟来控制数据的发送和接收,这两个时钟彼此独立,互不同步。,在异步通信中,接收端是依靠字符帧格式来判断发送端是何时开始
5、发送,何时结束发送的。字符帧格式是异步通信的一个重要指标,是CPU与外设之间事先的约定。(1)字符帧(Character Frame)字符帧也叫数据帧,由起始位、数据位、奇偶校验位和停止位4个部分组成。图7-2为异步传送的字符帧格式。,起始位:位于字符帧开始,起始位为0信号,只占1位,用于表示发送字符的开始;数据位:紧接起始位之后的就是数据位,它可以是5位、6位、7位或8位,传送时低位在先、高位在后;奇偶校验位:数据位后面的1位为奇偶校验位,可0可1,可要也可以不要,由用户决定;停止位:位于字符帧最后,它用信号1来表示1帧字符发送的结束,可以是1位、1位半或2位。,在串行通信中,两相邻字符帧之
6、间,可以没有空闲位,也可以有若干空闲位,这由用户来决定。图7-2(a)为无空闲位的字符帧,图7-2(b)有空闲位的字符帧。图中数据位为 7位。,例如,采用串行异步通信方式传送ASCII码字符5,规定为7位数据位,1位偶校验位,1位停止位,无空闲位。由于5的ASCII码为35H,其对应7位数据位为0110101,如按低位在前、高位在后顺序排列应为1010110。前面加1位起始位0,后面配上偶校验位1位0,最后面加1位停止位1,因此传送的字符格式为0101011001,其对应的波形如图图7-3所示。,(2)波特率(Baudrate)串行通信的快慢用波特率来表示,51系列单片机串行口有4种工作方式,
7、波得率也随之不同,波得率和帧格式可以通过软件编程来设置,必须正确进行波得率的设置,才能进行可靠的数据通信。,波特率是异步通信的另一个重要指标。波特率就是数据的传送速率,即每秒钟传送二进制数码的位数,单位为位/秒(b/s),也叫波特数。但波特率与字符的实际传送速率不同,字符的实际传送速率(字符帧/秒)是每秒内所传送的字符帧数,和字符帧格式有关。通常异步通信的波特率为509600b/s。异步通信要求要求发送端与接收端的波特率必须一致。,波特率与字符的传送速率(字符/秒)之间存在如下关系:波特率=位/字符字符/秒=位/秒。例如,假设字符传送的速率为120字符/秒,而每1个字符为10位,那么传送的波特
8、率为:10位/字符120字符/秒=1200位/秒=1200波特,典型串行传输的波特率有110、150、300、1200、2400、4800、9.6K、19.2K、。每1位二进制位的传送时间Td就是波特率的倒数,例如上例中Td=1/1200=0.833ms。,异步通信的优点是不需要传送同步时钟,字符帧的长度不受限制,设施简单;缺点是字符帧中因包含起始位和停止位而降低了有效数据的传输速率。,2.同步通信(Synchronous Communication)在异步传送中,每1个字符帧都要用起始位和停止位作为字符开始和结束的标志,占用了一定的时间。同步通信是一种连续串行传送数据的通信方式,1次通信只传
9、输一帧信息,即1次传送1组数据。这里的信息帧和异步通信的字符帧不同,通常有若干个数据字符,如图7-4所示。图7-4(a)为单同步字符帧结构,图7.4(b)为双同步字符帧结构,但它们均由同步字符SYN、数据字符和校验字符CRC三部分组成,数据字符间没有空闲位。在同步通信中,同步字符可以采用统一的标准格式,也可以由用户约定。,使用同步通信方式,可以实现高速度、大容量的数据传送,其缺点是要求发送时钟和接收时钟保持严格同步。故发送时钟除应和发送波特率保持一致外,还应把它同时传送到接收端去。,串行通信的制式 在串行通信中数据是在两个站之间进行传送的,按照数据传送方向,串行通信可分为单工(simplex)
10、、半双工(half duplex)和全双工(full duplex)三种制式。图7-5为三种制式的示意图。,(1)单工制式 在单工制式下,通信线的一端接发送器,一端接接收器,数据只能按照一个固定的方向传送,如图7-5(a)所示,A端为发送站,B端为接收站,数据仅能从A站发至B站。这种传输方式的用途有限,常用于串行口的打印数据传输与简单系统间的数据采集。,(2)半双工制式:数据可实现双向传送,但不能同时进行,在半双工制式下,系统的每个通信设备都由一个发送器和一个接收器组成,数据既可从A站发送到B站,也可以由B站发送到A站。不过在同一时间只能作1个方向的传送,即只能一端发送,一端接收,如图7-5(
11、b)所示。其收/发开关一般是由软件控制的电子开关。实际的应用采用某种协议实现收/发开关转换。,(3)全双工制式:全双工通信系统的每端都有发送器和接收器,可以同时发送和接收,即数据可以在两个方向上同时传送,如图7-5(c)所示。一般全双工传输方式的线路和设备较复杂。在实际应用中,尽管多数串行通信接口电路具有全双工功能,但一般情况下,多工作于半双工制式下,这种用法简单、实用。,信号的调制和解调,通信系统包括数据传送端、数据接收端、数据转换接口和传送数据的线路。单片机、PC机、工作站以及外设都可以作为传送、接收数据的终端设备。数据在传送过程中常常需要一些中间设备,这些中间设备称为数据交换设备,负责数
12、据的传送工作。数据在通信过程中,由数据的终端设备传送端送出数据,通过调制解调器把数据转换为一定的电平信号,在通信线路上进行传输。通信信息被传输到计算机的接收端时,同样,也需要通过调制解调器把电平信号转换为计算机能接受的数据,数据才能进入计算机。,计算机通信是数字信号的通信,它要求传送线的频带很宽。在长距离通信时,传输线(通常电话线)很难具有足够宽的频带,如果用数字信号经过传送线直接通信,信号就会畸变。因此要在发送端用调制器(Modulator)把数字信号转换为模拟信号,在接收端用解调器(Demodulator)检测此模拟信号,再把它转换成数字信号。调制方法有很多种,FSK(FrequencyS
13、hiftKeying)是1种常用的调制方法,它把数字信号的“1”与“0”调制成不同频率的模拟信号,调制和解调此处不作详述,请参阅有关资料。,串行通信的接口电路,串行接口电路的种类和型号很多。能够完成异步通信的硬件电路称为UART,即通用异步接收器/发送器(Universal Asychronous Receiver/Transmitter);能够完成同步通信的硬件电路称为USRT(Universal Sychronous Receiver/Transmitter);既能够完成异步通信又能同步通信的硬件电路称为USART(Universal Sychronous Asychronous Rece
14、iver/Transmitter)。,从本质上说,所有的串行接口电路都是以并行数据形式与CPU接口,以串行数据形式与外部逻辑接口。它们的基本功能都是从外部逻辑接收串行数据,转换成并行数据后传送给CPU,或从CPU接收并行数据,转换成串行数据后输出到外部逻辑。计算机在通信过程中,通常使用RS-232C等接口,通信线路常用双绞线、同轴电缆、光纤或无线电波。,7.2串行通信总线标准及其接口,在单片机应用系统中,数据通信多采用异步串行通信。在设计通信接口时,必须根据需要选择标准接口,同时,要考虑传输介质、电平转换等问题。8051芯片内有一个全双工的串行接口,该串行接口不仅可以和终端、系统主机等进行通信
15、,而且也可以作为单片机之间的通信口,大大拓宽了其应用范围。,但8051的串行接口,输入/输出均为TTL电平。这种以TTL电平传输数据的方式,抗干扰性差,传输距离短。为了提高串行通信的可靠性,增大通信距离,可采用标准串行接口。,标准串行通信接口电路有多种,异步串行通信接口主要有RS-232C接口;RS-422A、RS-423A接口以及20mA电流环等类型。采用标准接口后,能够方便地把单片机和外设、测量仪器等有机地结合起来,从而构成一个测控系统。例如当需要单片机和PC机通信时,通常采用RS-232C接口进行电平转换。下面对上述几种接口电路进行简单介绍。,7.2.1 RS-232C接口,RS-232
16、C是美国电子工业协会(EIA)1962年公布,1969年最后修定而成的通信协议。其中,RS表示Recommended Standard,232是该标准的标识号,C表示最后一次修定。RS-232C串行接口总线适用于:设备之间的通信距离不大于15 m,传输速率不大于20 kb/s的通信领域,是使用最早、应用较多的一种异步串行通信总线标准。,它包括了按位串行传输的电气和机械方面的规定。适应于数据终端设备(DTE)和数据电路终接设备(DCE)之间的接口。其中DTE主要包括计算机和各种终端机,而DCE的典型代表是调制解调器。,例如CRT、打印机与CPU的通信大都采用RS-232C接口,MCS-51单片机
17、与PC机的通信也是采用该种类型的接口。由于MCS-51系列单片机本身有一个全双工的串行接口,因此该系列单片机用RS-232C串行接口总线非常方便。,1.RS-232C信息格式标准 RS-232C采用串行格式,如图7-6所示。该标准规定:信息的开始为起始位,信息的结束为停止位;信息本身可以是5、6、7、8位再加一位奇偶校验位。如果两个信息之间无信息,则写“1”,表示空。,2.RS-232C总线规定及其电平转换器 RS-232C是1种有25个引脚的连接器,标准总线为25根,采用标准的D型25芯插头座。在微机通信中,通常被使用的RS-232C接口信号只有9根引脚,在此不作赘述。,RS-232C规定了
18、自己的电气标准,它的每一个引脚的规定以及对各种信号的电平规定都是标准的,因而便于互相连接。由于它是在TTL电路之前研制的,所以它的电平不是+5 V和地,而是采用负逻辑,即逻辑“0”:+3 V+15 V;逻辑“1”:-3 V-15 V。因此,RS-232C不能和TTL电平直接相连,使用时必须进行电平转换,否则将使TTL电路烧坏,实际应用时必须注意!常用的电平转换集成电路是传输线驱动器MC1488和传输线接收器MC1489,如图7-7所示。,MC1488内部有三个与非门和一个反相器,供电电压为12 V,输入为TTL电平,输出为RS-232C电平。MC1489内部有4个反相器,供电电压为+5 V,输
19、入为RS-232C电平,输出为TTL电平。,3.RS-232C使用注意事项 实际应用中,RS-232C应注意以下两点:(1)远距离和近距离通信时,所需使用的信号线是不同的。远距离通信时,一般要加调制解调器,使用的信号线较多。而近距离通信时,不采用调制解调器,通信双方可以直接连接,这种情况下,只需要几根信号线即可。最简单的情况,仅用发送数据、接收数据和信号地三根线即可实现全双工异步通信。,(2)在实际应用中,计算机和数字通信设备(如调制解调器)之间通信时,是通过计算机串行口与通信设备连接的。因此,从RS-232标准的角度来看,可以把计算机串行口视为计算机终端设备。RS-232规定的信号线,也就是
20、计算机串行口与通信设备进行连接所使用的信号线。对于MCS-51单片机,利用其RXD(串行数据接收端)线、TXD(串行数据发送端)线和一根地线,就可以构成符合RS-232C接口标准的全双工通信口。,7.2.2 RS-449、RS-422A、RS-423A标准接口,RS-232C虽然应用广泛,但因为推出较早,在现代通信系统中存在以下缺点:数据传输速率慢,传输距离短,未规定标准的连接器,接口处各信号间易产生串扰。鉴于此,EIA制定了新的标准RS-449,该标准除了与RS-232C兼容外,在提高传输速率,增加传输距离,改善电气性能等方面有了很大改进,1.RS-449标准接口 RS-449是1977年公
21、布的标准接口,在很多方面可以代替RS-232C使用。RS-449与RS-232C的主要差别在于信号在导线上的传输方法不同:RS-232C是利用传输信号与公共地的电压差,RS-449是利用信号导线之间的信号电压差,在1219.2 m的24-AWG双铰线上进行数字通信。RS-449规定了两种接口标准连接器,一种为37脚,一种为9脚。,RS-449可以不使用调制解调器,它比RS-232C传输速率高,通信距离长,且由于RS-449系统用平衡信号差传输高速信号,所以噪声低,又可以多点或者使用公共线通信,故RS-449通信电缆可与多个设备并联。,2.RS-422A、RS-423A标准接口RS-422A文本
22、给出了RS-449中对于通信电缆、驱动器和接收器的要求,规定双端电气接口形式,其标准是双端线传送信号。它具体通过传输线驱动器,将逻辑电平变换成电位差,完成发送端的信息传递;通过传输线接收器,把电位差变换成逻辑电平,完成接收端的信息接收。RS-422A比RS-232C传输距离长、速度快,传输速率最大可达10 Mb/s,在此速率下,电缆的允许长度为12 m,如果采用低速率传输,最大距离可达1200 m。,RS-422A和TTL进行电平转换最常用的芯片是传输线驱动器SN75174和传输线接收器SN75175,这两种芯片的设计都符合EIA标准RS-422A,均采用+5 V电源供电。RS-422A的接口
23、电路如图7-8所示,发送器SN75174将TTL电平转换为标准的RS-422A电平;接收器SN75175将RS-422A接口信号转换为TTL电平。,RS-423A和RS-422A文本一样,也给出了RS-449中对于通信电缆、驱动器和接收器的要求。RS-423A给出了不平衡信号差的规定,而RS-422A给出的是平衡信号差的规定。RS-422标准接口的最大传输速率为100 kb/s,电缆的允许长度为90m。RS-423A也需要进行电平转换,常用的驱动器和接收器为3691和26L32。其接口电路如图7-9所示。,7.2.3 20mA电流环路串行接口,20 mA电流环是目前串行通信中广泛使用的一种接口
24、电路。电流环串行通信接口的最大优点是低阻传输线对电气噪声不敏感,而且易实现光电隔离,因此在长距离通信时要比RS-232C优越得多。图7-10是一个实用的20 mA电流环接口电路。它是一个加上光电隔离的电流环传送和接收电路。在发送端,将TTL电平转换为环路电流信号,在接收端又转换成TTL电平。,通过介绍以上接口介绍,可以看出,在计算机进行串行通信时,选择接口标准必须注意以下几点:(1)可靠性。传输的信息不允许出现错误,在串行通道的各个环节上都要保证有高可靠性的传输,满足特定环境要求的接口标准选择尤其重要。,(2)通信速度和通信距离。通常的标准串行接口,都要满足可靠传输时的最大通信速度和传送距离指
25、标,但这两个指标具有相关性,适当降低传输速度,可以提高通信距离,反之亦然。例如,采用RS-232C标准进行单向数据传输时,最大的传输速度为20 kb/s,最大的传输距离为15 m。而采用RS-422A标准时,最大的传输速度可达10 Mb/s,最大的传输距离为300 m,适当降低传输速度,传输距离可达1200 m。,(3)抗干扰能力。通常选择的标准接口,在保证不超过其使用范围时都有一定的抗干扰能力,以保证可靠的信号传输。但在一些工业测控系统中,通信环境十分恶劣,因此在通信介质选择、接口标准选择时,要充分考虑抗干扰能力,并采取必要的抗干扰措施。例如在长距离传输时,使用RS-422A标准,能有效地抑
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 串行 接口
链接地址:https://www.31ppt.com/p-6054759.html