基于GPRS的嵌入式系统远程监控和升级
据的格式并建立了可靠的数据传输机制,保证了通信的稳定性。
3.1 远程升级系统DSP程序原理
系统采用TI公司的TMS320VC5509芯片作为主控单元。TMS320VC5509片内具有128 KB的高速静态RAM,片内ROM中固化了引导加载程序Bootloader(简称"DSP5509"),其Bootloader设置为外部SPI串行启动模式,外部储存媒介为 Flash。系统上电后,DSP5509在Bootloader引导下自动加载储存在片外Flash指定地址空间中的程序到片内的高速RAM中运行。
远程升级系统中,DSP程序是基于DSP5509的Bootloader技术[7]。将新的DSP5509程序按照一定的格式编码后发送到系统指定的邮箱中,系统利用GPRS模块访问此邮箱并读取出新程序,然后将新程序通过串口发送给DSP5509且保存到片外Flash的指定地址空间中。发送和保存结束后自动复位并重启DSP5509,在Bootloader的引导下DSP5509从外部Flash中加载并运行新程序,从而完成DSP5509程序的更新升级。
3.2 系统远程升级时的流程
在系统进行远程升级时,内部的DSP和ARM之间存在着较大数据量的传送,必须建立可靠的数据传输机制才能保证通信的稳定性。因此,系统将待发送的数据进行分割以分组形式传输,即将待发送的M字节数据分割成(x+1)组发送,前x组每次发送m=M/x个(M/x取整)字节,最后一组发送剩下的s=(M-m×x)个字节(若M/x为整数,则只需发送x组数据)。同时,DSP或ARM每次发送的数据格式均为3in1模式,即:(第1个字节表示本次发送数据的字节数+中间部分为m或者s字节的数据+最后1个字节为数据的CRC校验码),如图5所示。
远程升级DSP程序时,DSP端程序流程如图6所示。ARM将从邮箱中读取新程序代码传送给DSP,数据的传送采用基于CRC8校验的数据传输方式。其中,DSP先将ARM发送来的数据保存到Flash中(地址为70000h~7FFFFh的sector7中)。在确保DSP正确无误地接收完所有从ARM发送来的程序代码后,才将sector7中的数据转存到地址为00000h~0FFFFh的sector0中。sector0是DSP指定外部储存程序的地址空间,保证了远程升级的可靠性。如果传输过程中重传次数超过上限N,则说明此次传输可靠性降低,系统取消本次升级,保证系统的安全与稳定。
实验中,系统准确识别和读取了邮箱中的命令邮件,根据命令完成了相应任务;系统发送邮件时,成功地将数据文件和报告文件以电子邮件附件的形式发送到指定邮箱;测试远程升级功能时,准确无误地实现了系统的主控程序更新。整个远程监控和升级的过程稳定、可靠。
本系统基于GPRS网络、SMTP协议、POP3协议、串口通信和DSP的Bootloader等技术实现了嵌入式系统的远程监控与升级,既能远程修改系统的参数,又能获取系统自检报告、指定数据文件,并且实现主控程序的远程更新升级。整个系统在网络通信和串口通信的过程中都采用了严密的应答机制和数据校验规则,充分地保证了通信的可靠性和快速性,从而实现了系统的稳定性。实验证明,该系统在保证稳定性和可靠性的同时,降低了设计成本,缩短了维护周期,并且具有良好的扩展性。
- TD-SCDMA终端GMM实体一致性测试研究 (09-16)
- 基于GPS的车辆导航及GPRS网络监控(10-02)
- TI 单芯片手机多媒体电话解决方案(12-01)
- Comsys:集成移动WiMAX将是手机下一轮技术趋势之一(11-18)
- 基于GPRS网络的GPS图形导航仪 (01-05)
- GPRS无线DDN系统与应用(01-06)