嵌入式系统/ARM技术中的基于GPRS的嵌入式系统软件的远程在线升级
0 引 言 随着电子技术、计算机技术和通信技术的迅猛发展,嵌入式系统已经广泛应用于工业、军事、通信、信息家电等领域,但是面对新技术的不断涌现和对系统功能、性能以及规模要求的不断提高,开发者必须能够针对客户的需求及时对系统进行升级或维护,以延长系统使用周期,改善系统性能,增强系统适应性。 传统的嵌入式系统升级方式通常由维护人员到达设备现场,开箱重写或者更换FLASH存储部件,当设备数目庞大并且分布范围广泛时,这种升级维护方式的工作量将非常大,而且耗费的时间长、成本高。近年来通过以太网和在FLASH上建立TFFS文件系统的方法,能很好地解决批量升级的问题。但对于野外偏远地区或海上等有线网络无法到达 嵌入式系统是现代科技发展的产物,广泛应用在各个领域,如工业、军事、通信和家电。随着技术的进步,系统需要不断升级以满足更高的性能和功能需求。传统的升级方式依赖于现场维护人员,这种方式效率低下,成本高昂,尤其当设备数量众多且分布广泛时。为解决这一问题,近年来出现了通过以太网和TFFS文件系统进行批量升级的技术,但这种方法在无有线网络覆盖的偏远地区并不适用。 在这种背景下,基于GPRS(General Packet Radio Service)的嵌入式系统远程在线升级方案应运而生。GPRS是一种移动通信技术,提供“实时在线”、“按量计费”、“快捷登录”和“高速传输”的特性,能够在移动公网覆盖的任何地方实现数据传输,特别适合那些无法铺设有线网络的区域。嵌入式系统利用GPRS Modem与服务器进行通信,通过GPRS网络进行软件升级数据的远程传输。 系统结构包括服务器和远程终端两部分。远程终端由ARM内核的嵌入式控制芯片和GPRS Modem组成,两者通过RS 232总线连接。服务器端设置升级标志位,当标志位为1时,远程终端会检测到并开始升级过程。服务器通过GPRS将升级文件下载到远程终端,利用GPRS的无线连接实现数据传输和更新。 关键的技术之一是FLASH存储器编程。常见的编程方式有JTAG、ISP和IAP。JTAG主要用于开发调试,ISP需要额外硬件和中断应用软件,适用于便携设备升级,而IAP(In-Application Programming)则可以在应用程序运行时对另一部分程序进行读写,提供更大的灵活性。本方案采用IAP,通过GPRS网络接收升级文件,利用ARM芯片的内部FLASH存储器进行无线在线升级。 远程终端的程序设计需要对FLASH存储器进行分区,通常包括启动区、用户代码跳转区、用户代码1区和用户代码2区。启动区负责系统初始化,用户代码跳转区存储跳转指令,用户代码1区和2区交替存放当前程序和新升级的程序。每次升级,新的程序会被下载到未使用的代码区,然后通过修改跳转指令来切换执行的新代码。 系统上电后,首先执行启动区的初始化,然后从E2PROM读取升级配置信息。如果处于升级状态,终端会向服务器请求升级文件,并通过应答机制和断点续传技术确保数据传输的准确性和可靠性。一旦升级完成,终端会切换到新代码,而旧代码区则准备接收下一次升级。 基于GPRS的嵌入式系统远程在线升级技术显著提高了设备升级的效率,降低了维护成本,扩大了服务范围,尤其对于分布广泛且网络条件有限的设备来说,这是一个高效、可靠的解决方案。同时,它也展示了嵌入式系统如何通过创新技术适应不断变化的需求,保持系统的先进性和稳定性。
- 粉丝: 6
- 资源: 937
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- redis-standalone.yml redis k8s单点部署
- 2000-2023年省级产业结构升级数据-最新出炉.zip
- Python基于Scrapy兼职招聘网站爬虫数据分析设计(源码)
- zipkin.yml zipkin k8s部署
- YY9706.102-2021医用电气设备第2-47部分
- 通过运用时间序列ARIMA模型与循环神经网络(LSTM)对中国包装机器数量进行预测(python源码)
- 基于ARIMA模型的股票预测(python源码)
- 基于阿里云对象存储的对文件进行批量修改、批量解冻、批量上传
- 山东联通-海信IP501H-GK6323V100C-1+8G-4.4.2-当贝桌面-卡刷包
- IMG_6338.PNG