一种微波远程室外单元软件的更新方法

文档序号:7645937阅读:175来源:国知局
专利名称:一种微波远程室外单元软件的更新方法
技术领域
本发明涉及一种软件的更新方法,特别涉及一种微波远程室外单元软件的更新方法。
背景技术
由于通讯产品室外单元ODU是架于高空的铁架上,在恶劣的高空对于封装的产品如果需要更新应用程序Firmware,通过编译器BDM或者Cyclone Pro编辑导入十六进制代码S.19,需要打开外壳的螺丝和盒盖,接入BDM数据线,同时需要背着笔记本上高空的铁架去实施下载更新应用程序Firmware是比较困难的。如果是在出厂前把Boot先写到室外单元ODU里,只要保证室外单元ODU里有了Boot,则只需要控制室内单元IDU下载更新应用程序Firmware,把目标代码通过室内单元IDU下载更新到室外单元ODU的MCU里,从而达到更新的目的。

发明内容
本发明的技术问题是要提供一种微波远程下载进行软件更新的方法。
为了解决以上的技术问题,本发明提供了一种微波远程室外单元软件的更新方法,其工作步骤如下1)室外单元ODU供电;2)把需要更新Firmware新版本的代码上传到室内单元IDU.
3)室外单元ODU的控制器MCU的指针跳到Boot的起始地址,从EEPROM中读出室外单元ODU的版本号,将版本号上传给室内单元IDU;
4)室内单元IDU根据版本号判断是否是更新命令;否,跳转第13)步;5)如果室内单元IDU应答的是更新命令,则下载初始化命令;6)擦除Flash固定页和分页;7)室外单元ODU给室内单元IDU作出初始化应答;8)接收室内单元IDU的一组数据;9)组成数组;10)判断接收的数组是否正确;否,不给室内单元IDU作应答等待重发;跳转第8)步;11)判断接收的这帧数据是否为结束帧;是,跳转第13)步;12)写完一帧数据;给室内单元IDU做出第几帧接收应答后等待接收下一帧数据;跳转到第8)步;13)跳转到应用程序Firmware的起始地址,开始执行应用程序Firmware;14)结束。
Flash固定页和分页的擦除分为部分擦除和块擦除。部分擦除是指一次能够擦除512个字节;块擦除是调用命令字一次可以擦除64K字节内容。对于大多数芯片固定页的擦除操作,需要把代码拷贝到Ram区进行擦除操作。
Flash固定页和分页的写是指对于大多数芯片固定页写的操作,需要把代码拷贝到Ram区进行擦除操作。
本发明的优越功效在于本发明把应用软件一分为二,即分为Boot和Firmware两部分,应用灵活,通常我们需要更新的是Firmware,这样我们可以通过远程网络或者是微波就可以更新源代码Firmware,特别适合于恶劣环境产品的软件部分的更新。


附图为本发明的工作流程图。
具体实施例方式
请参阅附图所示,对本发明作进一步地描述。
由于Firmware的版本升级了,现在需要更新室外单元ODU里Firmware的版本,室内单元IDU里的需要更新应用程序版本号为00.00.01.02。
Boot的应用代码存放到MCU的固定页3F(0xC000~0xFFFF),被下载Firmware的代码存放到固定页3E(0x4000~0x7FFF)页和分页Block1、Block2、Block3里。Boot的起始地址存放到0x0FFFE;Firmware的起始地址存放到0x7FFFE。其工作步骤为1)给室外单元ODU和室内单元IDU连线供电;2)把需要更新Firmware新版本00.00.01.02的代码上传到室内单元IDU。
3)室外单元ODU的控制器MCU的指针直接跳转到Boot的起始地址0x0FFFE(存放的是起始地址0xC000),执行Boot的应用程序;4)Boot程序初始化后,首先从EEPROM的0x0B00地址开始读出连续四个单元的数据为原Firmware版本号00.00.01.01上传给室内单元IDU,等待室内单元IDU的响应;5)室内单元IDU根据室外单元ODU上报的版本号与室内单元IDU里存放需要更新Firmware版本号00.00.01.02版本进行比较,由于要更新的版本号较高,则需要更新,室内单元IDU应答的是更新命令下载初始化命令;6)室外单元ODU收到下载初始化命令需要下载更新,而不是跳转Skip命令,则擦除3E(0x4000~0x7FFF)页和分页Block1、Block2、Block3;7)擦除干净后室外单元ODU响应室内单元IDU,准备接收室内单元IDU发送的一帧数据;8)接收室内单元IDU发送的一帧数据并组成数组;9)判断接收的数组是否正确,经过检验如果本帧数据不正确则不作应答,等待重发本帧数据;跳转到第8)步;10)判断接收的这帧数据是否为结束帧,是,跳到第12)步;11)写完一帧数据后,做出正确应答并跳转到第8)步;12)跳转到应用程序Firmware的起始地址0x7FFE,开始执行应用程序Firmware;13)结束。
权利要求
1.一种微波远程室外单元软件的更新方法,其特征在于以下的工作步骤1)室外单元ODU供电;2)把需要更新Firmware新版本的代码上传到室内单元IDU。3)室外单元ODU的控制器MCU的指针跳到Boot的起始地址,从EEPROM中读出室外单元ODU的版本号,将版本号上传给室内单元IDU;4)室内单元IDU根据版本号判断是否是更新命令;否,跳转第13)步;5)如果室内单元IDU应答的是更新命令,则下载初始化命令;6)擦除Flash固定页和分页;7)室外单元ODU给室内单元IDU作出初始化应答;8)接收室内单元IDU的一组数据;9)组成数组;10)判断接收的数组是否正确;否,不给室内单元IDU作应答等待重发;跳转第8)步;11)判断接收的这帧数据是否为结束帧;是,跳转第13)步;12)写完一帧数据;给室内单元IDU做出第几帧接收应答后等待接收下一帧数据;跳转到第8)步;13)跳转到应用程序Firmware的起始地址,开始执行应用程序Firmware;14)结束。
全文摘要
本发明提供一种微波远程室外单元软件的更新方法,事先把Boot写在室外单元ODU里,把目标代码通过室内单元IDU下载更新到室外单元ODU的MCU里,从而达到更新。本发明把应用软件分为Boot和Firmware两部分,应用灵活,我们可通过远程网络或者是微波就可以更新源代码Firmware,特别适合于恶劣环境产品的软件部分的更新。
文档编号H04L12/24GK101034359SQ20071003882
公开日2007年9月12日 申请日期2007年3月30日 优先权日2007年3月30日
发明者赵俊, 张勇 申请人:上海杰盛无线通讯设备有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1