一种程序烧录方法、系统、装置及计算机可读存储介质制造方法及图纸

技术编号:22594331 阅读:26 留言:0更新日期:2019-11-20 10:54
本发明专利技术公开了一种程序烧录方法、系统、装置及计算机可读存储介质,首先获取包括启动程序内容与用户程序内容的目标程序;利用分散加载文件技术将目标程序中的启动程序内容与用户程序内容编译至不同时域;将启动程序内容与用户程序内容分别烧录至不同的地址空间,将升级版本程序内容传输至预设升级内容存储空间;利用单片机中的启动程序内容与升级版本程序内容对用户程序内容与启动程序内容中的待升级部分进行升级。一个目标程序中包括启动程序内容与用户程序内容,利用分散加载文件技术将目标程序中的启动程序内容和用户程序内容分别编译到不同的时域,从而将一个目标程序中的两种内容分离。实现了维护一个目标程序也能够实现单片机的远程升级。

A program burning method, system, device and computer readable storage medium

The invention discloses a program burning method, system, device and computer-readable storage medium. Firstly, the target program including the content of starting program and the content of user program is acquired; the content of starting program and the content of user program are compiled to different time domains by using the technology of distributed loading file; the content of starting program and the content of user program are burned to different time domains respectively Address space is used to transfer the upgraded program content to the preset upgraded content storage space; the user program content and the part to be upgraded in the content of the upgraded program are upgraded by using the content of the startup program and the content of the upgraded program in the MCU. A target program includes the content of the startup program and the content of the user program. The content of the startup program and the content of the user program in the target program are compiled into different time domains by using the technology of distributed loading files, so as to separate the two contents in the target program. The maintenance of a target program can also realize the remote upgrade of single chip microcomputer.

【技术实现步骤摘要】
一种程序烧录方法、系统、装置及计算机可读存储介质
本专利技术涉及单片机
,更具体地说,涉及一种程序烧录方法、系统、装置及计算机可读存储介质。
技术介绍
当前单片机远程升级的主流方式是分别编写两个程序,一个程序是在单片机启动时对用户程序进行升级的程序,即LD程序,另一个程序是用户实现单片机功能的用户程序,即AP程序。在这两个程序的烧录方面主要有三种实现方式,第一种是个别厂家的单片机在硬件上将FLASH分为两个区域,包括启动程序(LDROM)区域与用户程序(APROM)区域,在烧录时通过专用的烧录软件与工具,分别将LD程序烧录到LDROM区,将AP程序烧录到APROM区。第二种当用户在烧写程序时手工选择LD程序与AP程序的起始烧写地址,分两次将两个程序烧录到芯片里。第三种是使用专用的工具软件,将LD程序与AP程序合成为一个烧录文件,然后使用烧录软件将合成的程序烧录到芯片内容。这三种方式均需要建立独立的两个软件工程,一个为LD程序,一个为AP程序,并编译生成两个独立的烧录文件。在生产烧录时需用工具分别将两个文件烧录到单片机内,这样在开发与生产过程中一个产品至少需要维护两套源码工程与烧录程序,在实际开发过程中同一产品修改两套不同程序更加容易产生错误,在程序发给车间过程或生产过程中如果两个程序不匹配也容易造成批量问题,在后续的管理过程中各类办公软件流程中都会出现两个程序,增加管理的工作量,也容易导致错误产生。在大规模生产过程中一般使用自动烧录工具批量烧录程序,一般的工具只支持单个文件的烧录,如果有两个烧录文件就需要分别烧录两次,降低生产效率。
技术实现思路
本专利技术的目的在于提供一种程序烧录方法、系统、装置及计算机可读存储介质,以实现在远程升级单片机的过程中仅需要维护一套程序。为实现上述目的,本专利技术实施例提供了如下技术方案:一种程序烧录方法,包括:获取包括启动程序内容与用户程序内容的目标程序;利用基于分散加载文件技术的预设编译工具将所述目标程序中的启动程序内容编译至第一运行时域,将所述目标程序中的用户程序内容编译至第二运行时域;将所述启动程序内容烧录至首地址,将所述用户程序内容烧录至预设用户程序地址;将升级版本程序内容传输至预设升级内容存储空间;利用所述单片机中的所述启动程序内容与所述升级版本程序内容对所述用户程序内容与所述启动程序内容中的待升级部分进行升级。可选地,所述启动程序内容包括启动程序与中断向量表;相应的,所述利用所述单片机中的所述启动程序内容与所述升级版本程序内容对所述用户程序内容与所述启动程序内容中的待升级部分进行升级之前,还包括:启动所述单片机,以使所述单片机将所述中断向量表复制至预设中断向量表地址;所述利用所述单片机中的所述启动程序内容与所述升级版本程序内容对所述用户程序内容与所述启动程序内容中的待升级部分进行升级,包括:利用所述单片机中的所述启动程序与所述升级版本程序内容对所述用户程序内容与所述中断向量表进行升级。可选地,所述启动所述单片机,以使所述单片机将所述中断向量表复制至预设中断向量表地址之后,还包括:设置中断向量表的启动位置为所述预设中断向量表地址。可选地,所述将升级版本程序内容传输至预设升级内容存储空间,包括:将所述升级版本的用户程序内容传输至所述单片机中的第一升级内容存储区;将所述升级版本的中断向量表传输至所述单片机中的第二升级内容存储区。可选的,所述利用所述单片机中的所述启动程序内容与所述升级版本程序内容对所述用户程序内容与所述启动程序内容中的待升级部分进行升级,包括:向所述单片机的预设配置保存区发送升级标识,以使所述单片机检测到所述预设配置保存区中的升级标识后,将所述用户程序内容更新至所述目标用户程序内容。为实现上述目的,本申请还提供一种程序烧录系统,包括:目标程序获取模块,用于获取包括启动程序内容与用户程序内容的目标程序;编译模块,用于利用基于分散加载文件技术的预设编译工具将所述目标程序中的启动程序内容编译至第一运行时域,将所述目标程序中的用户程序内容编译至第二运行时域;烧录模块,用于将所述启动程序内容烧录至首地址,将所述用户程序内容烧录至预设用户程序地址;传输模块,用于将升级版本程序内容传输至预设升级内容存储空间;更新模块,用于利用所述单片机中的所述启动程序内容与所述升级版本程序内容对所述用户程序内容与所述启动程序内容中的待升级部分进行升级。可选地,所述启动程序内容包括启动程序与中断向量表;相应的,所述系统还包括:单片机启动模块,用于启动所述单片机,以使所述单片机将所述中断向量表复制至预设中断向量表地址;所述更新模块,具体用于:利用所述单片机中的所述启动程序与所述升级版本程序内容对所述用户程序内容与所述中断向量表进行升级。可选地,所述系统还包括:启动位置设置模块,用于设置中断向量表的启动位置为所述预设中断向量表地址。为实现上述目的,本申请还提供一种程序烧录装置,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如任一项所述程序烧录方法的步骤。为实现上述目的,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如任一项所述程序烧录方法的步骤。通过以上方案可知,本专利技术实施例提供的一种程序烧录方法,包括:获取包括启动程序内容与用户程序内容的目标程序;利用基于分散加载文件技术的预设编译工具将所述目标程序中的启动程序内容编译至第一运行时域,将所述目标程序中的用户程序内容编译至第二运行时域;将所述启动程序内容与所述用户程序内容分别烧录至单片机的不同地址空间;将目标用户程序内容烧录至所述单片机;利用所述单片机中的所述启动程序内容将所述用户程序内容更新至所述目标用户程序内容。由此可见,本申请提供的一种程序烧录方法,一个目标程序中既可以包括启动程序内容又包括用户程序内容,在进行烧录之前,利用基于分散加载文件技术的预设编译工具将目标程序中的启动程序内容和用户程序内容分别编译到不同的运行时域,从而能够将一个目标程序中的两种内容分离,在烧录时即可将不同的内容烧录至不同的地址空间。实现了维护一个目标程序也能够实现单片机的远程升级。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例公开的一种程序烧录方法流程图;图2为本专利技术实施例公开的一种单片机分区示意图;图3为本专利技术实施例公开的一种单片机分区示意图;图4为本专利技术实施例公开的一种单片机分区示意图;本文档来自技高网
...

【技术保护点】
1.一种程序烧录方法,其特征在于,包括:/n获取包括启动程序内容与用户程序内容的目标程序;/n利用基于分散加载文件技术的预设编译工具将所述目标程序中的启动程序内容编译至第一运行时域,将所述目标程序中的用户程序内容编译至第二运行时域;/n将所述启动程序内容烧录至首地址,将所述用户程序内容烧录至预设用户程序地址;/n将升级版本程序内容传输至预设升级内容存储空间;/n利用所述单片机中的所述启动程序内容与所述升级版本程序内容对所述用户程序内容与所述启动程序内容中的待升级部分进行升级。/n

【技术特征摘要】
1.一种程序烧录方法,其特征在于,包括:
获取包括启动程序内容与用户程序内容的目标程序;
利用基于分散加载文件技术的预设编译工具将所述目标程序中的启动程序内容编译至第一运行时域,将所述目标程序中的用户程序内容编译至第二运行时域;
将所述启动程序内容烧录至首地址,将所述用户程序内容烧录至预设用户程序地址;
将升级版本程序内容传输至预设升级内容存储空间;
利用所述单片机中的所述启动程序内容与所述升级版本程序内容对所述用户程序内容与所述启动程序内容中的待升级部分进行升级。


2.根据权利要求1所述的方法,其特征在于,所述启动程序内容包括启动程序与中断向量表;
相应的,所述利用所述单片机中的所述启动程序内容与所述升级版本程序内容对所述用户程序内容与所述启动程序内容中的待升级部分进行升级之前,还包括:
启动所述单片机,以使所述单片机将所述中断向量表复制至预设中断向量表地址;
所述利用所述单片机中的所述启动程序内容与所述升级版本程序内容对所述用户程序内容与所述启动程序内容中的待升级部分进行升级,包括:
利用所述单片机中的所述启动程序与所述升级版本程序内容对所述用户程序内容与所述中断向量表进行升级。


3.根据权利要求2所述的方法,其特征在于,所述启动所述单片机,以使所述单片机将所述中断向量表复制至预设中断向量表地址之后,还包括:
设置中断向量表的启动位置为所述预设中断向量表地址。


4.根据权利要求2所述的方法,其特征在于,所述将升级版本程序内容传输至预设升级内容存储空间,包括:
将所述升级版本的用户程序内容传输至所述单片机中的第一升级内容存储区;
将所述升级版本的中断向量表传输至所述单片机中的第二升级内容存储区。


5.根据权利要求1所述的方法,其特征在于,所述利用所述单片机中的所述启动程序内容与所述升级版本程序内容对所述用户程序内容与所述...

【专利技术属性】
技术研发人员:姚周军刘广卫杨鹏赵敏刘希伟刘强
申请(专利权)人:山东比特智能科技股份有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1