微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > RS 232串口通信在PC机与单片机通信中的应用

RS 232串口通信在PC机与单片机通信中的应用

时间:02-19 来源:网络 点击:

  随着信息技术的飞速发展和科技进步,在许多现代化集中管理的控制系统中,需要对现场数据进行统计、分析、打印、报警等,同时又要对现场设备进行实时控制,完成各种操作。单片机作为控制系统中必不可少的部分,在各个领域得到了广泛的应用。

  由于单片机具有体积小、价格低廉、适应性强的特点,一般在工业控制系统中,各种数据的采集和执行机构的控制都是由单片机来完成。而单片机的计算能力有限,难以进行复杂的数据处理。在功能比较复杂的自动控制系统中,通常以工控机为上位机,单片机为下位机,由单片机完成数据的采集及对设备的控制,而由上位机完成各种复杂的数据处理及对单片机的控制。在分布式控制系统中大多采用单片机作为下位机来进行数据采集和现场控制,在这些应用中,单片机只是直接面对被控对象底层,而对采集到的数据进行进一步的分析和处理工作,则是由功能强大的PC机来完成的。

  因此,PC机和单片机之间就有着大量的数据交换。在绝大多数PC机的标准配置中,都有一个到多个RS 232串口,因为RS 232串口担负着PC机和单片机之间大量的数据交换的重任。单片机89C52用于自动控制及数据传输,并通过RS 232接口向上位机进行数据通信。

  1 RS 232串口通信

  1.1 RS 232C标准

  RS 232C标准(协议)的全称是EIA-RS-232C标准,其中EIA(Electronic Industry Association)代表美国电子工业协会,RS(ecommeded standard)代表推荐标准,232是标识号,C代表RS 232的最新一次修改。在这之前,有RS 232B,RS 232A,它规定连接电缆和机械、电气特性、信号功能及传送过程。

  1.2 RS 232的接口引脚定义

  由于RS 232C并未定义连接器的物理特性,因此,出现了DB-25,DB-15和DB-9各种类型的连接器,其引脚定义也各不相同。常用的连接器接口图如图1所示,DB9的引脚功能见表1。

  

  图1 DB9的引脚图

  

  RS 232C标准接口有25条线,分别为4条数据线、11条控制线、3条定时线、7条备用和未定义线,常用的只有9根,它们是:

  (1)状态线

  数据准备就绪(Data Set Ready,DSR):有效时(ON)状态,表明数据通信设备可以使用。

  数据终端就绪(Data Terminal Ready,DTR):有效时(ON)状态,表明数据终端设备可以使用。

  这两个信号有时连到电源上,上电就立即有效。

  这两个设备状态信号有效,只表示设备本身可用,并不说明通信链路可以开始进行通信了,能否开始进行通信由下面的控制信号决定。

  (2)联络线

  请求发送(Request to Send,RTS):DTE准备向DCE发送数据,DTE使该信号有效(ON状态),通知DCE要发送数据给DCE了。

  允许发送(Clear to Send,CTS):对RTS的响应信号。当DCE已准备好接收DTE传来的数据时,使该信号有效,通知DTE开始发送数据。

  RTS/CTS请求应答联络信号是用于半双工MODEM系统中发送方式和接收方式之间的切换。在全双工系统中,因配置双向通道,故不需要RTS/CTS联络信号,使其变高。

  (3)数据线

  发送数据(Transmitted Data,TXD):DTE发送数据到DCE。

  接收数据(Received Data,RXD):DCE发送数据到DTE。

  (4)地线

  有两根线SG,PG:信号地和保护地信号线。

  (5)其余

  载波检测(Carrier Detection,CD):用来表示DCE已接通通信链路,告知DTE准备接收数据。

  振铃指示(Ringlng,RI):当DCE收到交换台送来的振铃呼叫信号时,使该信号有效(ON状态),通知DTE,已被呼叫。

  通常的应用系统中,往往是在CPU和I/O设备之间传送信息,两者都是DTE,上位机和单片机89C52之间的通信,双方都能发送和接收,他们的连接只需要使用三根线即可,即RXD,TXD和GND,这种连接方式,即两个串口连接时,接收数据针脚与发送数据针脚相连,彼此交叉,信号地对应接地即可。连接方式如图2所示。

  

  图2 上位机和单片机之间串口连接图

  1.3 波特率的概念

  串行通信中,每秒传送的数据位称为波特率。如数据传送的波持率为1200波特,采用N.8.1帧格式(10位),则每秒传送字节为120个,而字节中每一位传送时间即为波特率的倒数:T=1/1 200=0.833 ms。同样,如数据传送的波特率为1 9 200波特,则字节中每一位传送时间T=1/19 200=0.052 ms。根据数据传送的波特率即字节中每一位的传送时间,便可用普通I/O口来模拟实现串行通信的时序。

  1.4 RS 232C的电气特性

  (1)逻辑电平

  在TXD和RXD上:

  逻辑1(MARK):-3~-15 V;

  逻辑0(SPACE):+3~+15 V。

  在RTS,CTS,DSR,DTR和DCD等控制线上:

信号有效(

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top