[发明专利]一种单片机多个固件分散烧录方法在审
申请号: | 201810864933.3 | 申请日: | 2018-08-01 |
公开(公告)号: | CN109271174A | 公开(公告)日: | 2019-01-25 |
发明(设计)人: | 刘军;谭晨曦 | 申请(专利权)人: | 广州市星翼电子科技有限公司 |
主分类号: | G06F8/61 | 分类号: | G06F8/61 |
代理公司: | 广州三辰专利事务所(普通合伙) 44227 | 代理人: | 吴清瑕 |
地址: | 510540 广东省广州市白云区北太路163*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 烧录 单片机 灵活配置 时间成本 芯片烧录 生产 生产力 合法 | ||
本发明属于单片机烧录技术领域,具体涉及一种单片机多个固件分散烧录方法。针对STM32/GD32系列单片机多个固件的烧录方法进行有效改善,使用ARM公司SWD协议对STM32/GD32系列芯片烧录时能够从任意合法的FLASH地址开始烧录,因此在对多个固件的烧录时,将各个固件分散烧录FLASH到指定区域。提升生产基于STM32/GD32系列单片机的产品的烧录速度,节省生产时烧录所需的时间,降低时间成本,提高生产力;使得用户能够简化对需烧录的固件的操作步骤,同时可以进行灵活配置。
技术领域
本发明属于单片机烧录技术领域,具体涉及一种单片机多个固件分散烧录方法。
背景技术
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的600M的高速单片机。
STM32系列单片机是意法半导体(STMicroelectronics)推出的基于ARMCortex-M0/M3/M4/M7内核的32位单片机系列,支持ARM提出的SWD调试端口协议,通过SWD协议可以访问FLASH的控制寄存器组,也可以指定地址发送数据,STM32系列单片机使用地址自增方式单次最多接收4K字节数据。GD32系列单片机是兆易创新(GigaDevice)推出的基于ARMCortex-M3/M4内核的32位单片机系列,支持ARM提出的SWD调试端口协议,通过SWD协议可以访问FLASH的控制寄存器组,也可以指定地址发送数据,STM32系列单片机使用地址自增方式单次最多接收4K字节数据。现有的STM32/GD32系列单片机固件烧录流程图如附图1所示,其流程通常如下,:
(1)由用户指定的需要烧录的各个用户固件及其相对于FLASH基地址的地址偏移量;
(2)将需要烧录到STM32/GD32单片机的多个固件对应FLASH地址来拼接成一个起始地址必须为FLASH基地址、包含所有用户固件数据但又不仅限于用户固件数据的大型固件,用户固件在FLASH区间的分布示意图如附图2所示,如果要在FLASH地址区间内不连续的FLASH区间①、③、⑤中烧录3个用户固件,则需要拼接成一个涵盖了①、②、③、④、⑤共五个FLASH区间的大型固件,并且在需要这个大型固件对应FLASH区间②、④的非固件存储区位置填充无意义的数据;
(3)根据拼接得到的大型固件的大小,从FLASH基地址起擦除对应该固件大小的FLASH区间;
(4)将该大型固件从FLASH基地址开始烧录到第3步擦除的FLASH区间。
这样导致以下技术缺陷:
(1)往图2所示的子区间②、④中填充无意义的数据通常使得最后生成的大型固件的文件大小远远超出了原始用户固件的文件大小总和,相同烧录条件下的烧录时间会延长;
(2)往图2所示的子区间②、④中填充无意义的数据将覆盖该区间内的有效数据,会造成该区间的有效数据丢失;
(3)原有技术会将所有固件及固件之间的空白区间一同拼接成一个大型固件后再烧录到FLASH中,无法灵活的单独更新其中的部分区间的用户固件。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州市星翼电子科技有限公司,未经广州市星翼电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810864933.3/2.html,转载请声明来源钻瓜专利网。