《单片机幻灯片_1》由会员分享,可在线阅读,更多相关《单片机幻灯片_1(82页珍藏版)》请在金锄头文库上搜索。
1、第13章 MCS-51的串行通讯技术及其它扩展 接口 13.1 MCS-51单片机的串行通讯接口技术 MCS-51串行口的输入、输出均为TTL电平,抗干扰性差,传输距离短。 为提高串行通讯的可靠性,增大串行通讯的距离,采用标准串行接口:RS-232、RS-422A、RS-485等标准。 RS-232是由美国电子工业协会(EIA)于1962年制定的标准。 13.1.1 各种标准串行通讯接口,一、RS-232C接口 定义数据终端设备(DTE)和数据通讯设备(DCE)之间的串行接口标准。 图13-1是两台计算机利用MODEM、电话线进行远距离串行通讯的示意图,DTE为计算机,DCE的典型代表是MOD
2、EM。,图13-2为RS-232C的“D”型9针插头的引脚定义。,表13-1 PC机的RS-232C接口信号(略) 1. 电气特性 RS-232C上传送的数字量采用负逻辑,且与地对称。 逻辑“1”:315V; 逻辑“0”:315V。 RS-232C标准的信号传输的最大电缆长度为30米,最高数传速率为20kbit/s。 2. 电平转换 由于TTL电平和RS-232C电平互不兼容,所以两者对接时,必须进行电平转换。,RS-232C与TTL电平转换最常用的芯片是MC1488、MC1489和MAX232等,各厂商生产的此类芯片虽然不同,但原理相似。 以美国MAXIM公司的产品MAX232为例 ,它是R
3、S-232C双工发送器/接收器接口电路芯片,其外部引脚如图13-3,内部结构及外部元件如图13-4所示。,由于芯片内部有自升压的电平倍增电路,将+5V转换成-10V-+10V,满足RS-232C的逻辑“1”和逻辑“0”的电平要求。 工作时仅需单一的+5V电源。其片内有2个发送器,2个接收器,有TTL信号输入/RS-232C输出的功能,也有RS-232C输入/TTL输出的功能。该芯片与TTL/CMOS电平兼容,使用比较方便。 使用MAX232实现TTL/RS-232C之间的电平转换电路如图13-5所示。,二、 RS-422A接口 RS-232C虽然应用很广泛,但其推出较早,在现代网络通讯中已暴出
4、明显的缺点:传输速率低、通讯距离短、接口处信号容易产生串扰等。 因此,EIA又制定了RS-422A标准。RS-232C即是一种电气标准,又是一种物理接口功能标准,而RS-422A仅仅是一种电气标准。PC机不带RS-422A接口,因此要使用RS-232/RS-422A转换器,把RS-232C接口转换成RS-422A接口。,1. 电气特性 RS-422A与RS-232C的主要区别是,收发双方的信号地不再共地,RS-422A标准规定平衡驱动和差分接收的方法。 输入同一个信号时,其中一个驱动器的输出永远是另一个驱动器的反相信号。当一个表示逻辑“1”时,另一条一定为逻辑“0”。 若传输过程中,信号中混入
5、了干扰和噪声(以共模形式出现),由于差分接收器的作用,就能识别有用信号并正确接收传输的信息,并使干扰和噪声相互抵消。,因此,RS-422A能在长距离、高速率下传输数据。它的最大传输率为10Mbit/s,在此速率下,电缆允许长度为12m,如果采用较低传输速率时,最大传输距离可达1200m。 RS-422A电路由发送器、平衡连接电缆、电缆终端负载、接收器四部分组成。在电路中规定只许有一个发送器,可以有多个接收器。 该标准允许驱动器输出为26V,差分接收器可以检测的输入信号电平可低到200mV。,2. 电平转换 TTL电平转换成RS-422A电平的常用芯片有为SN75174、MC3487等。 RS-
6、422A电平转换成TTL电平的常用芯片为:SN75175、MC3486等。 SN75174、SN75175是分别是具有三态输出的单片四差分驱动器和接收器,采用+5V电源供电。图13-6,图13-7给出电平转换芯片SN75174、SN75175内部结构及引脚图。,TTL电平与RS-422A电平转换电路如图13-8所示。,三、RS-485接口 RS-485是RS-422A的变型,它与RS-422A的区别在于:RS-422A为全双工,采用两对平衡差分信号线;而RS-485为半双工,采用一对平衡差分信号线。RS-485对于多站互连是十分方便的。RS-485标准允许最多并联32台驱动器和32台接收器。
7、1. 电气特性 RS-485的信号传输采用两线间的电压来表示逻辑“1”和逻辑“0”,由于收发方需要两根传输线。数据采用差分传输,所以干扰抑制性好。又因无接地问,题,所以传输距离可达1200米,传输速率可达10Mbit/s。 总线两端接匹配电阻(1000左右),驱动器负载为54。驱动器输出电平在1.5V以下时为逻辑“1”,在1.5V以上时为逻辑“0”。接收器输入电平在0.2V以下时为逻辑“1”,在0.2V以上为逻辑“0”。 普通的PC机一般不带RS-485接口,因此要使用RS-232/RS-485转换器。对于单片机可以通过芯片MAX485来完成TTL/RS-485的电平转换。,2. 电平转换 在
8、RS-422A标准中所用的驱动器和接收器芯片,在 RS-485中均可以使用。 除了RS-422A电平转换中所列举的驱动器和接收器外,还有收发器SN75176芯片,该芯片集成了一差分驱动器和一差分接收器 ,如图13-9所示。SN75176的功能见表13-4。,RS-485点对点远程通讯电路如图13-10所示。,四、 20mA电流环串行接口 目前串行通讯中广泛使用的一种接口电路,但未形成正式标准。 该接口要比RS-232C接口简单的多,它只有4根线:发送正、发送负、接收正和接收负四根线组成一个输入电流回路、一个输出电流回路。 当发送数据时,根据数据的逻辑1、0,有规律的使回路形成通、断状态,即环路
9、中无电流表示逻辑“0”,有20mA电流表示逻辑“1”。 工作原理如图13-11所示。,20mA电流环串行通讯接口的最大优点是低阻传输线对电气噪声不敏感,且易实现光电隔离。因此,在长距离传送时,要比RS-232C优越的多。电流环在低速数传率传输时,传输距离可达1000米。 由于20mA电流环是一种异步串行接口标准,所以在每次发送数据时必须以无电流的起始作为每一个字符的起始位,接收端检测到起始位时便开始接收字符数据。 图13-12是一个由集成芯片构成的20mA电流环接口线路图。,五、 各种串行接口性能比较 现将RS-232C、RS-422A、RS-485、20mA电流环各串行接口性能列在表13-5
10、中,以便比较。 表13-5(略),13.1.2 MCS-51单片机双机串行通讯接口 一、 双机通讯硬件接口设计 根据MCS-51的双机通讯距离,抗干扰性的要求,可选择TTL电平传输,或选择RS-232C、RS-422A、RS485串行接口进行串行数据传输。 1TTL电平通讯接口 如果两个MCS-51单片机相距在几米之内,它们的串行口可直接相连,从而直接用TTL电平传输方法来实现双机通讯。如图13-13所示。,2RS-232C双机通讯接口 如果双机通讯距离在30米之内,可利用RS-232C标准接口实现点对点的双机通讯,接口电路如图13-14所示。,3RS-422A双机通讯接口 为了增加通讯距离,
11、减小通道及电源干扰,可以在 通讯线路上采用光电隔离的方法,利用RS-422A标 准进行双机通讯,接口电路如图13-15所示。,在图13-15中,每个通道的接收端都接有三个电阻 R1、R2、R3。 其中R1为传输线的匹配电阻,取值范围在50 1K之间,其他两个电阻是为了解决第一个数 据的误码而设置的匹配电阻。 为了起到隔离、抗干扰的作用,图13-15中必须使用 两组独立的电源。,4RS-485双机通讯接口 RS-422A双机通讯需四芯传输线,这对长距离通讯是 很不经济的,故在工业现场,通常采用双绞线传 输的RS-485串行通讯接口。 这种接口很容易实现多机通讯。图13-16给出了其RS- 485
12、双机通讯接口电路。 由图13-16可知:RS-485以双向、半双工的方式实现 了双机通讯。在8031系统发送或接收数据前,应 先将75176的发送门或接收门打开,当P1.0=1时, 发送门打开,接收门关闭;当P1.0=0,接收门打 开,发送门关闭。,13.1.3 MCS-51单片机多机串行通讯接口 利用串行口实现多机通讯的工作原理,已在第7章中作过介绍。下面首先介绍多机通讯的接口设计。 一、TTL电平多机串行通讯 当一台主机与多台从机之间距离较近时,可直接采用TTL电平进行多机通讯,多机通讯的连接方式如图13-17所示。 由于8031单片机P3口可带4个LSTTL,故在图13-17中,N的取值
13、范围应为N4。如果N4,则P3口应加驱动电路。,二、20mA电流环多机串行通讯接口 用TTL电平进行多机通讯时,有效通讯距离约几米左右,这在实际中往往不能满足要求。 可采用20mA电流环进行多机通讯,不仅提高了抗干扰能力,而且可实现远距离通讯。 20mA电流环串行多机通讯原理电路如图13-18所示。,13.1.4 PC机与MCS-51的点对点的串行通讯接口 一、硬件接口设计 如前所述, 通常PC机都配有RS-232C串行标准接口,有效通讯距离较短。 为实现长距离通讯应将RS-232C接口转换成RS-422A/RS-485接口。图13-19给出了这种转换的电路原理图。,图13-19可完成RS-2
14、32C至RS-422A的转换,也可完成RS-232C至RS-485的转换。当选择RS-422A输出方式时,3、4短接;当选择RS-485输出方式时,1、2短接,5、6短接,7、8短接。 图13-19中,R1、R2是为排除第一个数据传输误码而设置的匹配电阻。设计者可根据实际情况选择该电阻的大小。 电源VCC和VEE均为+5V,但不是一个电源,VCC和VEE 应为隔离电源,只有这样才能实现电隔离。,13.1.5 PC机与多个MCS-51单片机的串行通讯接口 一、硬件接口电路 将1台IBM-PC机和若干台MCS-51单片机构成的小型分布式测控系统,如图13-20所示。,1台PC机与数台8031单片机
15、进行多机通讯的RS-485串行通讯接口电路如图13-21所示。,13.2 MCS-51单片机与日历时钟芯片的接口 单片机应用系统,有时需一个实时时钟供定时、测控用。设计者只需选择合适的集成电路芯片即可。本节介绍日历时钟芯片DS12887的功能以及与MCS-51单片机的接口设计。 DS12887S是跨越2000年的日历时钟芯片,用4位数来表示年度,采用24引脚双列直插式封装。 该芯片的晶体振荡器、振荡电路、充电电路和可充电锂电池等一起封装在芯片的上方,组成一个加厚的集成电路模块。,电路通电时,充电电路自动对电池充电。充足一次电可供芯片时钟运行半年之久,正常工作时可保证时钟数据10年内不会丢失。此
16、外,片内带有114个字节的RAM。 13.2.1 DS12887的性能及引脚说明 一、性能 主要性能如下: (1)具有时钟、闹钟功能及到2100年的日历功能,可选择12小时制或24小时制计时,有AM和PM、星期、夏时制时间操作及闰年自动补偿等功能。,(2)DS12887内部有14个寄存器:10个时标寄存器、4个状态寄存器。还有掉电保护用114字节的低功耗RAM。 (3)具有用软件编程选择的周期性中断方式和多频率输出的方波发生器功能。 (4)该芯片可以满足各种不同的待机要求,最长可达24小时。 (5)可选择二进制或BCD码来表示时间。 (6)工作电压:+4.5+5.5V。 (7)工作电流:715mA。 (8)工作温度范围:0+70C,二、引脚说明 DS12887/12C887的引脚如图13-22所示。 各引脚功能如下: (1) MOT:计算机总线选择端(接低电平为总线方式); (2) SQWF:方波输出,是否输出以及速率由专用寄存器A、B的预置参数决定; (3) AD7AD0:地址/数据