51单片机与PC机串行通信接口的设计
2009-04-23王玮
王 玮
[摘要]介绍单片机与上位PC机串行通信的方法,设计单片机与PC机之间基于串行接口RS-232标准的串行通信接口电路。系统使用MAX232芯片以及外围电路进行电平转换实现单片机串行通讯口与PC机串行通讯口的互连,给出单片机与PC机实现串行通信的软件设计方法。
[关键词]串行通信 串行接口RS-232标准 电平转换
中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0320005-01
一、引言
近年来,单片机以其极高的性价比越来越多的在智能式仪表和工业过程控制中得到广泛的应用。但由于其本身资源有限,在一些复杂过程或功能较多的控制中就难以满足要求,需要将单片机的数据送到上一级的微机进行处理。因此实现上位机(PC机)与下位机(单片机)之间的数据可靠通信是必须解决的主要问题之一,在数据传输
量不大的情况下,按照RS-232标准进行串行通信越来越多的服务于各种应用系统中。
二、串行通信的基本原理
串行通信是指数据按位顺序传送的通信。串行数据传送的特点是:通信线路简单,最多只需一对传输线即可实现通信,成本低但速度慢,其通信线路既能传送数据信息,又能传送联络控制信息;它对信息的传送格式有固定要求,具体分为异步和同步两种信息格式,与此相应有异步通信和同步通信两种方式;在串行通信中,对信息的逻辑定义与TTL不兼容,需要进行逻辑电平转换;计算机与外界的数据传送大多是串行的,其传送的距离可以从几米到几千公里。单片机中使用的串行通信通常都是异步方式的。
(一)串行通信的两种基本方式
1.异步传送方式
异步传送的特点是数据在线路上的传送是不连续的。在线路上数据是以一个字(或称字符)为单位来传送的。异步传送时,各个字符可以是接连传送的,也可以是间断传送的,这完全由发送方根据需要来决定的。另外,在异步传送时,同步时钟脉冲并不传送到接收方,即双方各用自己的时钟源来控制发送和接收。
2.同步传送方式
同步传送是一种连续传送数据的方式。在通信开始以后,发送端连续发送字符,接收端也连续接收字符,直到通信告一段落。同步传送时,字符与字符之间没有间隙,也不用起始位和停止位。
3.通信中数据的传送方式
通常在串行通信中,数据在两个站之间是双向传送的,既可以A站作发送端,B站作接收端;也可以B站作发送端,A站接收端。
根据具体的需要,又可分为半双工(Half Duplex)和全双工(Full Duplex),半双工只有一条传输线,尽管传输也可以双向进行,但每次只能有一个站发送,另一个站接收。即可以是A发送到B,也可以是B发送到A,但A,B不能同时发送,当然也不能同时接收。
而全双工有两条传输线,因此两个站既可以同时发送,又可以同时接收,或者说一个站可以同时进行发收。
(二)通信过程的实现RS-232串行接口标准
为了便于计算机和各种外围设备的串行通信连接,更广义地来讲是为了各种数据终端设备(DTE)和数据通信设备(DCE)之间的连接,制定了若干种串行通信接口标准。只要是符合某种标准的设备之间就可以直接互相连接、互相通信。
RS-232串行接口标准是目前最常用的标准之一。RS-232-C串行通信接口是美国电气工业协会(EIA)与BELL公司等一起开发的一种标准通信协议,现在它在终端﹑外设与计算机中被广泛应用。完整的RS-232接口有25根线,采用一种25芯(针)的插头座,彼此连接十分方便。现在经常采用一种9针的插座来互相连接,因为25条线种最经常使用的只有9条线
(三)RS-232标准接口的实现及电平转换
PC机有两个标准的RS-232串行口,其电平采用的是EIA电平,而单片机的串行通信是由TXD(发送数据)和RXD(接收数据)来进行全双工通信的,它们的电平是TTL电平,为了PC机与单片机之间能可靠地进行串行通信,需要用电平转换芯片。由于MC1488和MC1489需要±12V﹑+5V电源供电,故采用MAXIM公司生产的低功耗﹑单电源的MAX232芯片,因为它自身带有电源电压变换器,可以把+5V电源变换成RS-232输出电平所需的±10V电压,能实现RS-232的技术指标,并只需要+5V的电源,为串行通信带来了较好的性能和低廉的价格。
(四)硬件电路的实现
通信过程实现部分介绍了如何在51单片机与PC机之间进行硬件电路的连接,在硬件电路中介绍了RS-232串行接口标准,阐述了如何利用MAX232芯片来进行电平的转换,保证通信过程不出现逻辑紊乱。
单片机与RS-232的连接电路如下图:
三、结束语
本文论述了如何在MCS-51单片机与PC机之间进行串行通信,实现了二者之间的数据﹑信息的交流。阐述了串行通信的基本原理和通信过程中的数据传送方式。在单片机方面针对51单片机串行接口的特点﹑工作原理﹑串行接口的控制,各种工作方式等问题进行了讲解。通信过程实现部分介绍了如何在51单片机与PC机之间进行硬件电路的连接,在电路中介绍了RS-232串行接口标准,阐述了如何利用MAX232芯片来进行电平的转换,保证通信过程不出现逻辑紊乱。
参考文献:
[1]胡乾斌、李光斌、李玲、甘锡英,单片微型计算机原理与应用[M].武汉:华中科技大学出版社,1997.
[2]曹汉房主编,数字电路与逻辑设计(第四版)[M].武汉:华中科技大学出版社,2004.