基于单片机的GPRS收发装置

时间:2022-10-27 09:42:52

摘 要:介绍一种以STC89C52RC和GPRS模块为核心的的单片机无线数据收发系统,设计了硬件电路和软件程序。该系统具有结构紧凑,工作稳定可靠,可扩展性强的特点。

关键词:无线通讯;GPRS;STC89C52RC;数据转换

无线数据收发是一种需求量很大的电子技术,GPRS系统已经在通信领域使用多年,拥有极强的稳定性,可以借助无线运行商的通信系统实现远距离的传输。近年来由于对于信息的时效性的要求越来越高,我们需要将数据通过无线的方式进行发送,实现多个系统间的通讯是发展的必然趋势。

1 系统分析与总体设计

通用短信收发装置由硬件和软件两部分组成。硬件部分由单片机,GPRS收发模块,RS485模块和驱动电路等组成,软件系统包括主程序,RS485通信协议,GPRS驱动和信息的纠错等子程序组成。系统采用工业级单片机芯片STC89C52RC,MAX3232和GPRS收发模块完成已有的标准RS485与GPRS的通信协议转换。该系统接收RS485协议的信号,经过软件对信息进行编排,使之可以通过GPRS进行发送,同时接收GPRS模块的数据,以RS485协议进行传输。系统可以将任意RS485串口通信的设备转化成使用GPRS无线通信的设备。实现远距离的GPRS通信[1-2]。

2 系统的硬件设计

GPRS模块采用Sim900A模块。该模块通信GSM/GPRS双频可选满足GPRS (class 10/8) 标准,GPRS(class B)。尺寸小巧待机功耗低,提供UART接口内置TCP/IP协议栈,且工作环境要求低。MAX3232采用专有低压差发送器输出级,利用双电荷泵在3.0V至5.5V电源供电时能够实现真正的RS485性能。MAX3232确保在120kbps数据速率,同时保持RS485输出电平。MAX3232在最差工作条件下能保证120kbps的数据速率。通常可工作于235kbps数据速率[3-4]。

如图1所示,MAX3232的内部电源由两路稳压型电荷泵组成,使用电池供电,采用设置与C1相同的旁电容来解决VDD与地线之间的波动。将旁电容接地进行去耦。同时旁路电容靠近 IC放置。Sim900A与单片机之间的连接可以通过其提供的UART接口直接连接,但是由于Sim900A需要特定的供电,所以采用了如图2的电路,保证数据传输完整和模块的稳定。

3 软件设计

软件分为信号接收、数据校验、转换格式和数据输出4个步骤。 主程序是整个系统的核心部分,它完成定时器,数据接收,检验,存储,发送这些子程序的调用,并使得处理器的硬件资源得到合理的应用。其逻辑框如图3所示。

当收发装置开始工作的时候,首先对Sim900A、MAX3232、程序主体以及单片机缓存进行初始化,避免上次工作可能残留的信息对系统产生影响致使收发出错。随后对数据发出进行回应,并准备开始接收数据。在接收到数据之后,将数据写入缓存,避免调用中的损失。此时判定数据的来源是来自系统的哪一方,对无线和有线调用不同的子程序进行处理,得到要输出的文件,如果接收的上位机有要求或者可以支持如json等高效的格式的话,可以将低效率低信息量的数据进行转化,之后以一个高效的形式发出,节省数据发出占用通信通道的时间,提高工作效率,这种格式的转化是由微处理器即单片机来完成的,单片机的存在使得不同的数据协议之间的通讯成为了可能,只需要提前进行封装,就能完成数据转化[5-6]。

主程序数据处理过程中,会对信息的格式,校验位,合理性进行判别,确定数据是否完整,完整则发送,不完整则再次请求数据。在通信芯片中进行校验,两侧转换程序分离的办法,可以化简原来的过程,少经过一次数据传递,节约了通信时间,增加了通信的稳定性。提高系统的效率。只需要根据不同的场合进行合理性的判定更改即可。

系统部分程序如下:

Void Init_Com()

{

TMOD=0x20;

PCON=0x00;

SCON=0x50;

TH1=0xE8;

TL1=0xE8;

TR1=1;

}

void load3232(void)

{

unsigned char dat;

Init_Com();

x=x

x=x&temp;

for(i=500;i>0;i--)

for(j=0;j

}

4 结束语

由Sim900A、STC89C52RC和mMAX3232组成的RS485转换GPRS模块结构简单、接口方便、集成度高。且解决了远距离无线数据传输需要经过上位机基站的问题,使得设备数据通过GPRS网络完成数据交互成为了可能,并且使用方便。该装置在设备控制应用方面具有一定的现实意义。

参考文献

[1]郑洪,曲博.基于单片机的模拟量数据采集系统设计[J].沈阳工程学院学报(自然科学版),2014,10(4):363-365.

[2]谢加明.基于ARM9-μC/OS-II的多任务A/D采集系统设计与实现[J].电子制作,2014(23).

[3]张一倩,石嘉川.标准模板库STL及应用[J].科技信息(科学教研),2008(04).

[4]翁 .软件工程的若干热点技术发展现状与展望[J].电子测试,2015(24).

[5]蓝厚荣.单片机的PWM控制技术[J].工业控制计算机,2010(03).

[6]夏晓南.基于单片机的温箱温度和湿度的控制[J].现代电子技术,2005(24).

作者简介:曹翰云(1996-),男,过程装备与控制工程专业本科学生。

*通讯作者:李铁钢(1973-),男,高级工程师,副教授。

上一篇:城市垃圾桶智能管理系统研究 下一篇:ZigBee在物联网中的应用与设计