[发明专利]一种基于国产单片机GD32的软件升级方法在审
申请号: | 202111126036.0 | 申请日: | 2021-09-24 |
公开(公告)号: | CN113885910A | 公开(公告)日: | 2022-01-04 |
发明(设计)人: | 王雨龙 | 申请(专利权)人: | 天津津航计算技术研究所 |
主分类号: | G06F8/65 | 分类号: | G06F8/65 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 刘二格 |
地址: | 300308 天津*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 国产 单片机 gd32 软件 升级 方法 | ||
本发明公开了一种基于国产单片机GD32的软件升级方法,使用基于CAN总线的IAP升级方法,将待升级的设备全部接在总线上,通过使用YMODEM协议进行简单快速批量化的升级。本发明将所有待升级的设备全部挂在CAN总线上,通过YMODEM协议将升级文件发送到各个待升级的设备,这种升级方法简单、快速、并可以进行批量化软件升级。
技术领域
本发明属于计算机控制技术领域,涉及一种基于国产单片机GD32的软件升级方法。
背景技术
工业控制领域的软件通常在第一次部署后还需再次升级,软件使用一段时间后由于出现BUG、用户的需求增加、模块性能的升级等需要再次对芯片中的软件进行烧写,软件升级方法包括ISP(在系统中编程)和IAP(在应用中编程)两种方法。
ISP升级方法一般通过仿真器进行软件升级,目前已经使用比较少,这种方法的缺点主要是需要拆开设备,连接仿真器,时间成本、经济成本均较高。
目前主流的方法是IAP升级方法,传统上通常使用串口进行升级,在系统进入BootLoader的时候通过串口将升级文件写入到FLASH中并进行跳转。
常用的单片机软件升级包括使用仿真器进行升级和使用IAP进行软件升级,国产单片机GD32同样也可以使用仿真器进行升级或者使用IAP进行升级,对于使用仿真器升级的方法(使用JTag或者SWD进行烧录)需要每次连接专用的烧录仿真器,对于产品设计来说需要设计单独的升级接口电路,并且每次只能单独升级一个设备。
发明内容
(一)发明目的
本发明的目的是:提供一种基于国产单片机GD32的软件升级方法,使用基于CAN总线的IAP升级方法,将待升级的设备全部接在总线上,通过使用YMODEM协议进行简单快速批量化的升级。
(二)技术方案
为了解决上述技术问题,本发明提供一种基于国产单片机GD32的软件升级方法,包括如下过程:
(1)设计CAN总线通讯应用层协议,设计CAN数据处理过程中的CAN消息结构体CAN_RECV_DATA,并对CAN总线的29位扩展帧进行配置。
(2)对单片机系统进行初始化操作,配置时钟信息以及中断信息,配置总线通讯速率信息,总线ID的掩码值以及过滤器值,定义所使用的变量以及乒乓缓冲区。
(3)在CAN总线中断回调函数CAN0_RX0_IRQHandler中,将接收到的CAN总线数据依次存入到乒乓缓冲区中。
(4)根据步骤1定义CAN总线通讯协议对CAN总线数据进行解析,将获取到的数据帧的ID值赋值到接收帧标识变量RecvID,将获取到的数据长度赋值到接收帧长度变量RecvDLC,将获取到的最多8个数据值赋值到接收数据指针RecvData。
(5)在主函数中对收到的CAN总线数据进行解析,将解析后得到的数据提取出来,使用写入闪存函数WriteFlash()将更新后的固件信息写入到Flash中;读取应用程序启动地址APP_ADDR_FLASH并判断该地址所存储的数据最高位是否为1,为1则表示已成功将固件写入到Flash中。
(6)获取APP_ADDR_FLASH地址偏移4个字节地址所存储的值并转化为函数指针类型,使用初始化堆栈指针函数:set_MSP()函数,参数为APP_ADDR_FLASH初始化用户的堆栈指针;运行pFunction函数指针所指的实体进行程序跳转,完成启动程序到应用程序的跳转,完成程序升级。
(三)有益效果
上述技术方案所提供基于国产单片机GD32的软件升级方法,将所有待升级的设备全部挂在CAN总线上,通过YMODEM协议将升级文件发送到各个待升级的设备,这种升级方法简单、快速、并可以进行批量化软件升级。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津津航计算技术研究所,未经天津津航计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111126036.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:链路自适应传输方法、装置、设备及存储介质
- 下一篇:一种地质灾害监测仪安装架