基于Q2403A的单片机短消息收发系统

技术分类: 测试与测量  微处理器与DSP  | 2007-11-27
来源:电子设计应用 | 作者:华北电力大学电子与通信工程学院 李圆

  手机模块部分

  Q2403A GSM/GPRS模块支持双频EGSM/GPRS 900MHz/1800MHz模式,支持AT指令,短消息功能完备。Q2403A模块具有60引脚的通用接口,非常容易集成到应用产品中;具有SIM卡确认、供电、时钟、复位及I/O的3V SIM卡接口,包括SIMVCC、SIMRST、SIMDATA、SIMCLK和SIMPRES等。另外,模块提供一个符合V24协议的6线串行通信接口,包括TX、RX、RTS、CTS、DTR、DSR;同时提供DCD和RI信号接口、上电信号PowerON/OFF和复位信号RST。模块正常工作要求提供两路电源,其中,VBATT提供给RF部分,电压范围为3.3V~4.5V,最大功率为2 W;VDD提供给基带部分,电压范围为3.1V~4.5V,最大功率为0.5W。图4为手机模块与SIM卡外围电路设计。

手机模块与SIM卡外围电路图

图4 手机模块与SIM卡外围电路图

  系统软件设计

  主程序流程

  主程序主要负责系统的初始化,包括单片机时钟设置、端口工作方式设置、串口设置(波特率、中断允许等)、默认系统数据的恢复(如时间设置、标志位清零等)、GPRS模块的初始化、中断初始化等。然后反复查询SIM卡网络注册情况,直到注册成功。最后进入低功耗模式,等待中断。流程如图5所示。

 系统主程序流程

图5 系统主程序流程

  PC与单片机通信部分

  该部分包括机组工作数据的采集和反向控制命令的发送,由串口RXD/TXD完成。

  PC控制器通过RS-232总线传送多帧数据,数据内容包括机组运行状态、全部温度数据和输入/输出状态信息,以及故障信息等。短消息控制器内的单片机在串口RXD/TXD接收中断过程中判断并处理接收到的数据。

  短消息收发

  本部分要实现的功能有:接收控制方发来的短消息并提取有效命令词、组装控制帧;采集到紧急故障信息时,或是需要反馈执行结果时,向控制方发送短消息。采用中断方式接收来自Q2403A模块的信息。图6为串口RX/TX的接收和发送中断流程。

串口RX/TX接收/发送中断流程

图6 串口RX/TX接收/发送中断流程

  Q2403A支持的功能相当完备,本系统主要使用了短消息功能。单片机与Q2403A模块间主要通过串口RX/TX进行通信,以AT命令来实现接收及发送的功能。用到的AT命令主要有:查询注册状态AT+CREG;短消息列表AT+CMGL;短消息发送AT+CMGS;短消息删除AT+CMGD。

  结语

  本文在提出总体设计方案的基础上,完成了系统的硬件和软件设计、应用程序的编写及调试,经实际运行验证,取得了满意的效果。就目前的测试结果而言,结合远程监控的优势,具有较强的实用性。对软硬件作适当扩充修改后,还可应用于环境监测、石油开采设备的监测与控制、农作物生长状况的监测、交通管理系统及安防系统等诸多领域。

  参考文献:

  1. 李华,等.MCS51系列单片机实用接口技术.第9版.北京:北京航空航天大学出版社,2002

  2. 马中梅,籍顺心,张凯等.单片机的C语言应用程序设计.北京航空航天大学出版社,1999

  3. 龚建伟,等.Visual C++/Turbo C串口通信编程实践[M].北京:电子工业出版社,2004

1】【2
加载中

对文章的评论

剩余字数:  

浏览该文章的用户还看过...

  • 文 章

  • 论 坛

  • 博 客

  • 小 组