CN103617061A - 基于arm的多节点在线更新软件的方法 - Google Patents
基于arm的多节点在线更新软件的方法 Download PDFInfo
- Publication number
- CN103617061A CN103617061A CN201310652598.8A CN201310652598A CN103617061A CN 103617061 A CN103617061 A CN 103617061A CN 201310652598 A CN201310652598 A CN 201310652598A CN 103617061 A CN103617061 A CN 103617061A
- Authority
- CN
- China
- Prior art keywords
- software
- board
- arm
- usb
- enabling
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明揭示了一种基于ARM的多节点在线更新软件的方法,包括如下步骤:(1)用仿真器下载引导及启动代码到各板卡,其中引导和启动代码带有支持板卡ARM微处理芯片在应用编程的USB驱动或者网络驱动程序;(2)在上位机/服务器上安装更新应用程序的软件,该软件能通过USB或网口识别出相应板卡的地址,能够选中相应板卡下载应用软件;(3)通过转换软件或者代码模块将HEX或者BIN文件转换成IAP底层模块能识别的软件格式,并存储到相应的位置;(4)需要更新代码的数据包通过USB HUB或路由器转发到各个板卡,板卡根据地址信息选择接收或抛弃数据包,地址匹配的数据包存储到相应位置完成软件更新。
Description
【技术领域】
本发明本方法涉及航空电子产品自动测试技术领域,特别是更新软件的方法。
【背景技术】
在航空电子产品的测试技术领域,通常采用直接连接仿真器的方式更新应用程序,此种方式需要使用仿真器,需要搭建下载环境的步骤,同时还需要拆除***取出板卡单独升级软件,操作复杂。
【发明内容】
本发明的目的在于提供一种基于ARM的多节点在线更新软件的方法,用以解决现在技术中需要使用仿真器及搭建下载环境,同时还需要拆除***取出板卡单独升级软件而导致的操作复杂的问题。
为实现上述目的,实施本发明的基于ARM的多节点在线更新软件的方法,用于更新板卡上的软件,该板卡通过USB HUB或路由器与上位机/服务器连接,该方法包括如下步骤:
步骤一:用仿真器下载引导及启动代码到各板卡,其中引导和启动代码带有支持板卡ARM微处理芯片在应用编程(IAP,In ApplicationProgramming)的USB驱动或者网络驱动程序;
步骤二:在上位机/服务器上安装更新应用程序的软件,该软件能通过USB或网口识别出相应板卡的地址(网口为MAC地址),能够选中相应板卡下载应用软件;
步骤三:由于编译生成的应用代码一般是HEX或BIN文件,需要通过转换软件或者代码模块将HEX或者BIN文件转换成IAP底层模块能识别的软件格式,从而能让IAP底层模块识别并存储到相应的位置,如闪存中指定的地址空间;
步骤四:需要更新代码的数据包通过USB HUB或路由器转发到各个板卡,板卡根据地址信息选择接收或抛弃数据包,地址匹配的数据包存储到闪存(FLASH)的相应位置,从而完成软件更新。
依据上述主要特征,步骤二中的更新应用程序的软件可以设计成组件,嵌入到***自身的上位机的应用软件中。
与现有技术相比较,与现有技术相比较,本发明对基于ARM的嵌入式设备通过USB或网口更新应用程序,无论是单板***还是通过USB HUB或网络互连的多板***均可以做到免拆升级应用程序,如此可以避免使用仿真器,省去搭建下载环境的步骤,操作简单方便,是外场更新软件的强力工具。
【附图说明】
图1为实施本发明基于ARM的多节点在线更新软件的方法的***的组成框架图。
图2为实施本发明基于ARM的多节点在线更新软件的方法的基于USB总线的测试设备的组成示意图。
图3为代码升级方法的流程示意图。
【具体实施方式】
请参阅图1所示,为实施本发明基于ARM的多节点在线更新软件的方法的***的组成框架图。实施本发明基于ARM的多节点在线更新软件的方法的***包括上位机/服务器,该上位机/服务器与USB HUB或路由器连接,而每一USB HUB或路由器与多个板卡连接。
针对图1所揭示的***,实施本发明的基于ARM的多节点在线更新软件的方法包括如下步骤:
步骤一:用仿真器下载引导及启动代码到各板卡,其中引导和启动代码带有支持板卡ARM微处理芯片IAP(In Application Programming在应用编程)的USB驱动或者网络驱动程序;
步骤二:在上位机/服务器上安装更新应用程序的软件,该软件能通过USB或网口识别出相应板卡的地址(网口为MAC地址),能够选中相应板卡下载应用软件,该软件可以设计成组件,嵌入到***自身的上位机的应用软件中;
步骤三:由于编译生成的应用代码一般是HEX或BIN文件,需要通过转换软件或者代码模块把HEX或者BIN文件转换成IAP底层模块能识别的软件格式,从而能让底层的IAP模块识别并存储到相应的位置,如FLASH中指定的地址空间;
步骤四:需要更新代码的数据包通过USB HUB或路由器转发到各个板卡,板卡根据地址信息选择接收或抛弃数据包,地址匹配的数据包存储到FLASH相应位置,从而完成软件更新。
为对本发明更清楚的理解,以下以一实例进行说明。
请参阅图2所示,为实施本发明基于ARM的多节点在线更新软件的方法的基于USB总线的测试设备的组成示意图。该基于USB总线的测试设备包括测试单元和测试适配器两部分,其中测试单元的测试机箱中设置多个资源模块,这些资源模块通过USB总线在计算机的控制下,运行测试单元测试程序,实现整个测试过程的自动化。其中USB总线最多支持7层级联,最大连接127个设备,支持热插拔,是小型化测试设备良好的总线解决方案。
测试单元的继电器开关卡、RS422测试卡、离散量测试卡均以STM32F103微处理器为核心处理器,引导和启动代码存放到地址为0x08000000--0x08002FFF地址空间中,应用代码将被加载到从0x08003000开始的地址空间。
测试单元中的计算机通过USB总线控制测试单元中的各板卡进行测试,其中继电器板卡主要实现信号切换功能,数字多用表卡可以测量信号的电压、电流、电阻和频率等,RS422测试卡能够实现RS422信号测试,根据测试对象不同可以配备0~32V的离散量板卡。
这些板卡输入输出端用相应连接器和线缆实现整体的信号调理,然后连接到G12测试接口阵列,接口阵列由各种标准测试连接器组成。被测模块接口通过适配器与测试平台的G12测试接口阵列相连,适配器主要实现把被测模块的信号连接到平台相应的测试点上,测试点在G12测试接口阵列中有具体定义。这样就实现了一个整体的测试***,对被测模块进行测试。
请参阅图3所示,对测试单元的升级方法如下:
当启动或复位板卡时,如果检测到需要更新代码的离散量则进入IAP模式,通过该模式即可下载应用程序到STM32F103中。如果没有激活该离散量,则程序运行后PC指针跳转到0x08003000应用程序地址初始地址,运行应用程序。在某板卡进入IAP模式后,在板卡枚举时识别出该板卡,当选择好下载代码后将代码数据包通过广播方式发送到终端设备,终端设备如与数据包地址信息匹配就将数据捕获并存储到相应的地址空间。终端设备的操作依赖于烧写在0x08000000~0x08002FFF地址空间的启动代码。
在上述的应用中,测试软件分上位机测试软件和测试单元固件两部分,其中上位机测试软件开发采用VISUAL C++6.0和Labview8.6的编程环境。
可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。
Claims (2)
1.一种基于ARM的多节点在线更新软件的方法,用于更新板卡上的软件,该板卡通过USB HUB或路由器与上位机/服务器连接,该方法包括如下步骤:
步骤一:用仿真器下载引导及启动代码到各板卡,其中引导和启动代码带有支持板卡ARM微处理芯片在应用编程的USB驱动或者网络驱动程序;
步骤二:在上位机/服务器上安装更新应用程序的软件,该软件能通过USB或网口识别出相应板卡的地址并选中相应板卡下载应用软件;
步骤三:通过转换软件或者代码模块将HEX或者BIN文件转换成IAP底层模块能识别的软件格式,并存储到相应的位置;
步骤四:需要更新代码的数据包通过USB HUB或路由器转发到各个板卡,板卡根据地址信息选择接收或抛弃数据包,地址匹配的数据包存储到相应位置而完成软件更新。
2.如权利要求1所述的基于ARM的多节点在线更新软件的方法,其特征在于:步骤二中的更新应用程序的软件设计成组件,嵌入到***自身的上位机的应用软件中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310652598.8A CN103617061A (zh) | 2013-12-05 | 2013-12-05 | 基于arm的多节点在线更新软件的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310652598.8A CN103617061A (zh) | 2013-12-05 | 2013-12-05 | 基于arm的多节点在线更新软件的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103617061A true CN103617061A (zh) | 2014-03-05 |
Family
ID=50167764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310652598.8A Pending CN103617061A (zh) | 2013-12-05 | 2013-12-05 | 基于arm的多节点在线更新软件的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103617061A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107621819A (zh) * | 2017-08-24 | 2018-01-23 | 电子科技大学 | 一种三维声波测井仪的fpga配置文件在线更新装置 |
US9983969B2 (en) | 2016-03-29 | 2018-05-29 | Wipro Limited | Interface switch for automatically performing operations in an embedded system and a method thereof |
CN109460239A (zh) * | 2017-09-06 | 2019-03-12 | 深圳市中兴微电子技术有限公司 | 一种多单板烧录的方法、***及烧录工具 |
CN110851163A (zh) * | 2019-11-13 | 2020-02-28 | 陕西重型汽车有限公司 | 一种基于can通信的兼容多设备平台的软件更新方法 |
CN110990037A (zh) * | 2019-11-26 | 2020-04-10 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 板卡软件升级方法及装置 |
CN111796844A (zh) * | 2020-06-29 | 2020-10-20 | 南京智鹤电子科技有限公司 | 基于蓝牙网络拓扑的固件升级方法、装置、蓝牙网络拓扑 |
CN113468010A (zh) * | 2021-09-02 | 2021-10-01 | 湖北芯擎科技有限公司 | 文件处理方法、装置、电子设备和计算机可读存储介质 |
CN114661326A (zh) * | 2022-03-22 | 2022-06-24 | 中国北方车辆研究所 | 一种多处理器嵌入式***软件快速更新方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582055A (zh) * | 2009-05-31 | 2009-11-18 | 杭州华三通信技术有限公司 | 一种串口接管方法及装置 |
CN102122258A (zh) * | 2011-03-22 | 2011-07-13 | 四川长虹电器股份有限公司 | 嵌入式设备文件***受损的修复方法 |
CN102185754A (zh) * | 2011-01-30 | 2011-09-14 | 广东佳和通信技术有限公司 | 交换机***中板卡的升级方法 |
-
2013
- 2013-12-05 CN CN201310652598.8A patent/CN103617061A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582055A (zh) * | 2009-05-31 | 2009-11-18 | 杭州华三通信技术有限公司 | 一种串口接管方法及装置 |
CN102185754A (zh) * | 2011-01-30 | 2011-09-14 | 广东佳和通信技术有限公司 | 交换机***中板卡的升级方法 |
CN102122258A (zh) * | 2011-03-22 | 2011-07-13 | 四川长虹电器股份有限公司 | 嵌入式设备文件***受损的修复方法 |
Non-Patent Citations (4)
Title |
---|
SUMMERHEC: ""用DFUSE软件通过USB接口在线编程STM32"", 《HTTP://WENKU.BAIDU.COM/VIEW/F67C17225901020207409CBA.HTML》 * |
富元等: ""通过网管远程更新板卡软件的设计与实现"", 《计算机与数字工程》 * |
王党利等: ""基于STM32F10X引导程序实现USB在应用中编程"", 《国外电子测量技术》 * |
陈峰峰等: ""STM32F10x在应用中编程的实现方法", 《单片机与嵌入式***应用》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9983969B2 (en) | 2016-03-29 | 2018-05-29 | Wipro Limited | Interface switch for automatically performing operations in an embedded system and a method thereof |
CN107621819A (zh) * | 2017-08-24 | 2018-01-23 | 电子科技大学 | 一种三维声波测井仪的fpga配置文件在线更新装置 |
CN107621819B (zh) * | 2017-08-24 | 2019-12-27 | 电子科技大学 | 一种三维声波测井仪的fpga配置文件在线更新装置 |
CN109460239A (zh) * | 2017-09-06 | 2019-03-12 | 深圳市中兴微电子技术有限公司 | 一种多单板烧录的方法、***及烧录工具 |
CN110851163A (zh) * | 2019-11-13 | 2020-02-28 | 陕西重型汽车有限公司 | 一种基于can通信的兼容多设备平台的软件更新方法 |
CN110990037A (zh) * | 2019-11-26 | 2020-04-10 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 板卡软件升级方法及装置 |
CN111796844A (zh) * | 2020-06-29 | 2020-10-20 | 南京智鹤电子科技有限公司 | 基于蓝牙网络拓扑的固件升级方法、装置、蓝牙网络拓扑 |
CN111796844B (zh) * | 2020-06-29 | 2024-01-12 | 南京智鹤电子科技有限公司 | 基于蓝牙网络拓扑的固件升级方法、装置、蓝牙网络拓扑 |
CN113468010A (zh) * | 2021-09-02 | 2021-10-01 | 湖北芯擎科技有限公司 | 文件处理方法、装置、电子设备和计算机可读存储介质 |
CN113468010B (zh) * | 2021-09-02 | 2021-11-16 | 湖北芯擎科技有限公司 | 文件处理方法、装置、电子设备和计算机可读存储介质 |
CN114661326A (zh) * | 2022-03-22 | 2022-06-24 | 中国北方车辆研究所 | 一种多处理器嵌入式***软件快速更新方法 |
CN114661326B (zh) * | 2022-03-22 | 2024-04-30 | 中国北方车辆研究所 | 一种多处理器嵌入式***软件快速更新方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103617061A (zh) | 基于arm的多节点在线更新软件的方法 | |
CN103207794B (zh) | 局域网内移动终端之间应用程序的分享方法 | |
CN104572221A (zh) | 一种车载ecu在线升级***及方法 | |
CN103580908A (zh) | 服务器的配置方法及*** | |
CN104518924A (zh) | 自动化测试及结果比对方法及*** | |
CN103164238A (zh) | 自动化连续安装操作***的方法 | |
CN104993947A (zh) | 批量升级固件的方法 | |
CN104980552B (zh) | 实现Android移动终端自动化测试的方法及*** | |
CN103293466A (zh) | 一种测试嵌入式pcba上通讯模块的方法及其*** | |
CN103593281A (zh) | 测试***及测试方法 | |
CN103970655A (zh) | 一种基于expect的服务器自动化集群测试方法 | |
CN110825204A (zh) | 电子设备的主板及电源信息管理方法 | |
CN114024853A (zh) | 一种裸金属节点的硬件信息收集方法、***及相关组件 | |
CN110764036B (zh) | 一种智能配变终端测试方法及*** | |
CN113849228A (zh) | 操作***批量部署方法、***、终端及存储介质 | |
CN116298801A (zh) | 芯片测试装置、方法、电子设备及存储介质 | |
CN102902526A (zh) | 一种通过延时实现bmc及ip信息的自动化设置方法 | |
CN110459260B (zh) | 自动测试切换装置、方法和*** | |
US11853247B2 (en) | Interface switching apparatus, communication device, and interface switching method | |
CN103323767B (zh) | 一种测试嵌入式pcba上蓝牙模块的方法及其*** | |
CN102540105A (zh) | Ac、dc开关机测试方法 | |
CN105224453A (zh) | ***兼容性的自动测试方法及装置 | |
CN113094256B (zh) | Bms软件测试方法和电子设备 | |
CN111176164B (zh) | 一种扩展多个远程输入输出模块的方法、装置及介质 | |
CN111367735A (zh) | 一种基于待测服务器和乌班图操作***的测试方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140305 |