基于AT89C51应用系统的串行通信设计

2006-10-08 15:01:53来源: 现代电子技术

1 引 言

在红外成像技术的电力设备状态检测系统中,基于AT89C51单片机的应用系统,采用美国雷态公司的型号为3iLRL3的非接触式红外测温仪.该测温仪采用的是RS232C串行通信标准接口,该接口在很多通信设备中通用,目前与PC机的直接串行通信也是RS 232C接口。尽管RS232C性能指标并非很好,但还是有广泛的市场支持。串行通信技术在测控系统中占有很重要的地位,只用三根线.就可以方便的在2个数字设备之间进行信息的交换,实现全双工的传送数据,硬件成本低.而且通用性好。

2 串行通信的硬件设计

在所开发的系统中.红外测温仪将检测电力没备的工作和环境温度,通过RS 232C串口传给单片机,同时由单片机控制检测装置的在线工作组态,红外检测装置的工作组态的制订和选择是由上位PC机来完成的,这样,以单片机为核心组成的控制电路是数据的中转站,上位PC机下传红外测温仪的在线工作组态.上传红外测温仪的检测的电力设备的在线工作温度.以诊断电力设备的工作状态。在这里单片机与PC机的串行通信接口还是RS 232C的标准通信。AT89C51单片机仅有一个串口,这就要解决另一个串口外扩问题,系统利用的通用串行通信接口芯片8251A来扩展。该系统的串行通信的硬件电路如图1所示。

RS-232是EIA(Electronics Industries Association)电平.信号电平采用负逻辑,逻辑"1"=一12V,逻辑"0"=+12 V。这与单片机的TTL信号电平不兼容,所以RS232C与89C51单片机的串口RXD(串行接收口)和TXD(串行发送口)不能直接连接,需要跨接一个转换器在RS232C与TTL电路之间进行电平转换。市场上电平转换的芯片很多,如早期广泛使用MCl488和MCl489,MC1488是接收TTL电平.输出RS 232C电平.MC1489是接收RS 232C电平,输出TTL电平,该电平转换接口的不便之处是需要±12 V工作电压,并且功耗较大.不适用于低功耗的系统。

所以系统利用了MAXIM公司生产的MAX232实现2种电平之间的转换.其主要优点有:芯片内部有一个电压转换器,可以把输入的+5 V工作电压转换为RS 232C接口所需的±l 2 V电压;同时可以实现2路2种电平的双向转换.在该系统中可代替2片MCl488和2片MCl489,外接1个5 V的电源,而不需像MCl488和MCl489那样外接±12 V电源,所以电路简单,提高性能。

在系统中,红外测温仪与PC机2个串行口,而89C51只有1个串口,利用可编程通用串行接口芯片8251A实现与上位Pc机通信,由于8251A串口芯片的片选端CS接到74LS138译码器的Y2.因此8251A的口地址为OA000H,RXCLK和TXCLK接收和发送时钟都连接51的T1口,利用T1作为波特率发生器[1]。

3 软件设计

红外测温仪的串口通过MAX232直接与89C15连接,所以红外扫描传感头按给定的扫描策略扫描电力设备,读入温度扫描信号,做最大值、最小值、平均值及异常剔除处理,单片机记录扫描时间和温度值,等待PC机命令.向PC机发送数据,发送数据流程如图2所示。红外传感器通过Pc机下传的在线工作组态控制检测电力设备的状态,其接收数据的流程如图3所示。单片机与PC机之间的串行通信通过825lA,所以在通信程序中首先对825lA进行初始化编程,设置串口通信方式,确定通信协议。这些是通信程序设计的关键点。


(1)串口的工作方式设置

通过对单片机的串口控制寄存器(SCON)的设置来完成,由于采用一帧11位的数据格式,所以89C51的串口的工作方式只能设置成方式2和方式3,数据传输的波特率有定时器控制,本系统采用方式3,单片机的串行接收的l帧数据中,奇偶校验位由SCON的TB8和RB8(第9位数据)来完成校验功能。

(2)串口波特率的设定


通过此公式的计算可以进一步验证在设计系统选用的晶振的频率为11.0592 MHz时计算出来的T1初值没有误差。

(3)握手信号的规定

请求信号定为FFH、应答信号定为FEH、错误信号定为FDH、结束信号定为FCH。

(4)数据传送方式

利用RS 232C的2根传输线实现全双工的发送和接收数据。

(5)通信方式

异步通信方式,以字为单位传送数据,由于发送与接收双方使用各自的时钟,所以在异步通信中严格规定数据帧的格式。

(6)数据帧的格式

一帧数据为11位,包括起始位、数据位、奇偶检验位、停止位,数据格式如下[2]:

所以8251A初始化方式控制字为7DH。

PC机采用Visual basic编程,VB支持面向对象的程序设计,具有结构化的事件驱动编程模式并可以使用无限扩增的控件,而且可以十分简便地做出良好的人机界面。在标准的串口通信方面,VB提供了具有强大的通信控件MSCOMM,文件名为MSCOMM.VBX。该控件可设置串行 通信的数据发送和接收,对串口状态及串行通信的信息格式和协议进行设置。在发送或接收数据的过程中触发onComm事件,通过编程访问CommEvent属性了解通信事件的类型,分别各自的处理。VB串行初始化通信软件如下[3]:

4 结 语

串行通信技术目前在很多测控系统中广泛被使用,而且远距离的通信使用的更为突出,本系统的RS 232C只是用于近距离的通信,在改进的系统中使用RS 485可以扩大传输距离,并是系统稳定性增强。

关键字:单片机  接口  RS  232C

编辑: 引用地址:http://www.eeworld.com.cn/gykz/GYTX/200610/461.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
单片机
接口
RS
232C

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved