首页 / 专利库 / 软件 / 引导装载程序 / 一种嵌入式设备程序烧写的方法及系统

一种嵌入式设备程序烧写的方法及系统

阅读:15发布:2020-05-21

专利汇可以提供一种嵌入式设备程序烧写的方法及系统专利检索,专利查询,专利分析的服务。并且本 发明 涉及一种嵌入式设备程序烧写的方法,包括:将待烧写程序文件分为 引导装载程序 Boot Loader和存储在SD卡中的其余烧写文件;增改BootLoader开源代码,将增改后的Boot Loader通过烧录器烧写入嵌入式设备;运行Boot Loader程序,利用SD卡中的文件将其余烧写文件烧写入嵌入式设备的FLASH中。本发明还提供了一种嵌入式设备程序烧写的系统,包括Boot Loader模 块 (1)和烧写模块(2)。本发明的优点在于:烧录器只需烧录Boot Loader,较少了坏区的影响;通过SD卡可完成对所有待烧写程序的烧写;烧写过程中通过声音和显示提示,实现了 人机交互 。,下面是一种嵌入式设备程序烧写的方法及系统专利的具体信息内容。

1.一种嵌入式设备程序烧写的方法,其特征在于,包括:
A1)将待烧写程序文件分为引导装载程序Boot Loader和存储在SD卡中的其余烧写文件;
A2)增改Boot Loader开源代码,将增改后的Boot Loader通过烧录器烧写入嵌入式设备;
A3)运行Boot Loader程序,启动系统;
A4)判断SD卡中是否存在待烧写文件,如果存在,利用SD卡中的文件将其余烧写文件烧写入嵌入式设备的FLASH中,否则,返回步骤A3);
A5)烧写完成后,移除SD卡,重启系统;
步骤A2)中,所述Boot Loader源代码增改的内容包括对SD卡数据读写的支持及对fat32文件系统的解析;所述开源代码包括VIVI;
所述其余烧写文件包括内核映像文件、根文件系统映像文件、根文件系统包、应用程序包及烧写工具,则所述步骤A4)进一步包括:
B1)启动烧写工具,将内核和根文件系统映像文件从SD卡拷贝到内存中运行;
B2)通过内核、根文件系统和烧写工具将所有文件烧写入嵌入式设备的FLASH中。
2.根据权利要求1所述的嵌入式设备程序烧写的方法,其特征在于,步骤A3)和A4)之间还包括:判断当前系统中是否存在SD卡,如果存在,则挂载SD卡,获取SD卡中的文件列表,并进入步骤A4),否则,返回步骤A3)。
3.根据权利要求1-2中任一项所述的嵌入式设备程序烧写的方法,其特征在于,所述程序烧写的方法适用于基于ARM9及以上平台的嵌入式设备。
4.根据权利要求3所述的嵌入式设备程序烧写的方法,其特征在于,所述程序烧写的方法在烧写过程中基于不同的嵌入式设备通过声音或显示提示。
5.一种嵌入式设备程序烧写的系统,其特征在于,包括Boot Loader模(1)和烧写模块(2),所述Boot Loader模块(1)用于判断当前系统是否存在外接SD卡,以及当存在SD卡时初始化SD卡及读取SD卡中的文件,所述烧写模块(2)用于其余烧写文件烧写入嵌入式设备的FLASH中;所述BootLoader模块(1)还用于当SD卡中的文件存在其余烧写文件时,将内核和根文件系统映像文件拷贝到内存中运行,以及启动烧写工具;所述烧写模块(2)还用于在烧写过程中通过声音或显示提示烧写进度。

说明书全文

一种嵌入式设备程序烧写的方法及系统

技术领域

[0001] 本发明涉及嵌入式软件技术领域,更具体地说,涉及一种嵌入式设备程序烧写的方法及系统。

背景技术

[0002] 嵌入式系统广泛应用于电子设备中,如手机、掌上电脑、机电设备等,从软件度看通常嵌入式系统分为:
[0003] 引导程序:包括固化固件中的引导代码即Boot代码和引导装载程序即Boot Loader两大部分,其中Boot代码为可选;
[0004] 内核:用于管理系统给的进程、内存、设备驱动程序、文件等,决定着系统的性能和稳定性
[0005] 文件系统:包括根文件系统和建立于FLASH内存设备之上的文件系统;
[0006] 用户应用程序:特定于用户的应用程序。
[0007] 而嵌入式系统的程序烧写时必不可少的步骤,即将二进制程序文件写入存储设备中,这些文件往往包括上述引导程序、内核、根文件系统及应用程序等。常见的烧写方法通过烧录器将Boot Loader、内核以及根文件系统等一起烧写入Flash中,这种方法的缺点是如果烧写区域存在坏区将会导致烧写失败。

发明内容

[0008] 本发明要解决的技术问题在于,针对现有技术中当烧写区域存在坏区将会导致烧写失败,提供一种嵌入式设备程序烧写的方法及系统。
[0009] 本发明解决其技术问题所采用的技术方案如下:
[0010] 构造了一种嵌入式设备程序烧写的方法,包括:
[0011] A1)将待烧写程序文件分为引导装载程序即Boot Loader和存储在SD卡中的其余烧写文件;
[0012] A2)增改Boot Loader开源代码,将增改后的Boot Loader通过烧录器烧写入嵌入式设备;所述Boot Loader源代码增改的内容包括对SD卡数据读写的支持及对fat32文件系统的解析;所述开源代码包括VIVI。
[0013] A3)运行Boot Loader程序,启动系统;
[0014] A4)判断SD卡中是否存在待烧写文件,如果存在,利用SD卡中的文件将其余烧写文件烧写入嵌入式设备的FLASH中,否则,返回步骤A3);所述其余烧写文件包括内核映像文件、根文件系统映像文件、根文件系统包、应用程序包及烧写工具,则所述步骤A4)进一步包括:
[0015] B1)启动烧写工具,将内核和根文件系统映像文件从SD卡拷贝到内存中运行;
[0016] B2)通过内核、根文件系统和烧写工具将所有文件烧写入嵌入式设备的FLASH中。
[0017] A5)烧写完成后,移除SD卡,重启系统。
[0018] 本发明所述的嵌入式设备程序烧写的方法,步骤A3)和A4)之间还包括:判断当前系统中是否存在SD卡,如果存在,则挂载SD卡,获取SD卡中的文件列表,并进入步骤A4),否则,返回步骤A3)。
[0019] 本发明所述的嵌入式设备程序烧写的方法适用于基于ARM9及以上平台的嵌入式设备,在烧写过程中,基于不同的嵌入式设备可通过声音或显示提示。
[0020] 本发明还提供了一种嵌入式设备程序烧写的系统,包括Boot Loader模和烧写模块,所述Boot Loader模块用于判断当前系统是否存在外接SD卡,以及当存在SD卡时初始化SD卡及读取SD卡中的文件,当SD卡中的文件存在烧写工具时,启动烧写工具;所述烧写模块用于在烧写工具启动后,将内核、根文件系统及应用程序等烧写入嵌入式设备的FLASH中。
[0021] 实施本发明的嵌入式设备程序烧写的方法及系统,具有以下有益效果:烧录器只需烧录Boot Loader,较少了坏区的影响;通过SD卡可完成对所有待烧写程序的烧写;烧写过程中通过声音和显示提示,实现了人机交互附图说明
[0022] 下面将结合附图及实施例对本发明作进一步说明,附图中:
[0023] 图1是本发明中嵌入式设备程序烧写的方法的流程图
[0024] 图2是本发明中嵌入式设备程序烧写的系统的结构示意框图
[0025] 图3是本发明实施例中嵌入式设备程序烧写的系统的Boot Loader模块的工作原理图;
[0026] 图4是本发明实施例中嵌入式设备程序烧写的系统的烧写模块的工作原理图。

具体实施方式

[0027] 为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
[0028] 请参阅图1,是本发明嵌入式设备程序烧写的方法的流程图,该方法具体包括以下步骤:构造了一种嵌入式设备的程序烧写的方法,包括:
[0029] 步骤11:将待烧写程序文件分为Boot Loader和存储在SD卡中的其余烧写文件;
[0030] 步骤12:增改Boot Loader开源代码,将增改后的Boot Loader通过烧录器烧写入嵌入式设备;
[0031] 在本实施例中,Boot Loader使用开源代码VIVI,增改的内容包括:对SD卡数据读写的支持,兼容标准SD卡和SDHC卡,及对fat32文件系统的解析。由于Boot Loader文件较小,当使用烧录器进行烧写时,因出现坏区导致烧写失败的可能性极小。
[0032] 步骤13:运行Boot Loader程序,正常启动系统;
[0033] 步骤14:判断当前系统中是否存在SD卡,如果存在,则挂载SD卡,获取SD卡中的文件列表,并进入下述步骤,否则返回步骤103;
[0034] 其中,在步骤14中,当检测出的当前系统中存在SD卡时,首先初始化SD卡,鉴别SD卡的类型,按地址读取SD卡中的数据,标准SD卡为字节地址,SDHC卡为块地址,而对fat32文件系统的解析,首先参照fat32文件系统的格式,通过文件名,查找到文件数据的首地址,作为参数传递到SD卡读写模块,并获取文件占用的簇数,来确定文件是否读完。然后通过mount命令将SD卡挂载到文件系统中,来进行下述步骤。
[0035] 步骤15:判断SD卡中是否存在待烧写文件,如果不存在,返回步骤13,如果存在,利用SD卡中的其余烧写文件将待烧写文件烧写入嵌入式设备中;
[0036] 其中,所述其余烧写文件包括内核映像文件、根文件系统映像文件、根文件系统包、应用程序包及烧写工具,则所述步骤15)进一步包括:
[0037] 步骤151:启动烧写工具,将内核和根文件系统映像文件从SD卡拷贝到内存中运行;
[0038] 步骤152:通过内核、根文件系统和烧写工具将所有文件烧写入嵌入式设备的FLASH中。对于内核,可以通过内核mtd提供的接口直接写入内核分区,对于跟文件系统可将根文件系统分区挂载到文件系统中,然后将文件包解压;对于应用程序,可以通过复制、删除命令操作实现。
[0039] 步骤16:烧写完成后,移除SD卡,重启系统。
[0040] 基于上述步骤,通过SD卡完成了对所有待烧写文件包括内核、根文件系统、应用程序的烧写,而无需通过烧录器对这些待烧写文件进行烧写,因而避免了因坏区而导致的烧写失败。本发明实施例中所述的嵌入式设备的程序烧写的方法适用于基于ARM9及以上平台的嵌入式设备,在烧写过程中,基于不同的嵌入式设备可通过声音或显示提示,从而实现了人机交互,在烧写过程中出现异常可及时停止烧写,大大提高了烧写质量和效率。
[0041] 本发明实施例中还公开了一种嵌入式设备程序烧写的系统,如图2所示,包括Boot Loader模块1和烧写模块2,其中Boot Loader模块1位于嵌入式系统中,烧写模块2位于SD卡中。
[0042] 请参阅图3所示,为Boot Loader模块1的工作原理图。Boot Loader模块1存在于嵌入式系统中,模块的内容极为烧录入嵌入式设备中的Boot Loader,主要用于判断当前系统是否存在外接SD卡,以及当存在SD卡时初始化SD卡及读取SD卡中的文件,当SD卡中的文件中存在其余烧写文件时,将SD卡中的内核和根文件系统映像文件拷贝到内存中运行,并启动其余烧写文件中的烧写工具,以进行烧写。
[0043] 请参阅图4所示,为烧写模块2的工作原理图。所述烧写模块用于在烧写工具启动后,将内核、根文件系统及应用程序等烧写入嵌入式设备的FLASH中,其中内核通过内核mtd提供的接口直接写入内核分区,根文件系统分区挂载到文件系统中,然后将文件包解压以写入文件系统,而对于应用程序,可通过烧写工具利用复制、删除等命令进行烧写,同时在烧写过程中通过显示或声音提示烧写进程,以实现人机交互。
[0044] 以上所述,对于本领域的普通技术人员来说,可以根据本发明的技术方案和技术构思做出其他各种相应的改变和变形,而所有这些改变和变形都应属于本发明的权利要求的保护范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈