基于STM32处理器的WSN节点固件在线系统升级方法
2016-06-08蒋存波
蒋存波 焦 阳
(桂林理工大学信息科学与工程学院 广西 桂林 541004)
基于STM32处理器的WSN节点固件在线系统升级方法
蒋存波焦阳
(桂林理工大学信息科学与工程学院广西 桂林 541004)
摘要为满足无线传感网中节点设备的功能升级和系统重构需要,研究基于Cortex-Mx核的嵌入式系统固件IAP更新升级方法。利用命令请求加身份验证的方式触发升级,利用分拆函数将代码拆分成128字节信息块并将其组成138字节的ModBus报文进行传输,利用CRC进行数据校验,采用应答机制实现流量控制,利用Flash识别函数区分不同的Flash类型,利用Flash写入函数满足片内片外Flash、不同参数NorFlash和NandFlash编程需要。经实验测试,该方案能够实现WSN节点的固件升级与WSN在系统动态重构需要。
关键词嵌入式系统WSN固件在线升级ModBus协议
0引言
随着现代电子技术、计算机技术、控制技术的发展,物联网技术得到迅速发展及应用。在物联网系统中有许多基于ARM-Cortex-Mx(x=0,1,3)核的WSN节点,这些节点在布置完毕后,依据应用要求的变化需要在线进行固件更新升级[1,2],由于固件大小差异很大,一些可存储于片内Flash中,还有一些需要存储于外扩NorFlash或NandFlash中。ISP(in-system programming)方法可以实现在系统编程,但需要配置处理器的boot引脚,不适用WSN节点等的在系统升级要求。ST提供的IAP方法,不支持Flash扩展,亦不能完全满足用户对产品的升级需要。本文介绍一种IAP方法,可以在应用系统中实现处理器片内Flash和片外扩展Flash固件的在线升级,可满足WSN节点的在线固件更新与WSN在系统动态重构需要。
1STM32处理器在线……
