一种基于TF启动卡进行flash镜像自动烧写的方法技术

技术编号:9830613 阅读:138 留言:0更新日期:2014-04-01 19:33
本发明专利技术涉及flash的烧写技术领域,具体涉及基于TF启动卡进行flash镜像自动烧写的方法。本发明专利技术在嵌入式Linux系统中,制作TF启动卡,设备采用TF启动卡启动,当设备启动时,系统先运行TF启动卡P2分区中的系统内核,并挂载P3分区中的根文件系统,然后将P1分区挂载到根文件系统下,利用集成在P3分区中的flash操控工具,将P1分区中的系统内核和根文件系统自动烧写到flash对应的分区上,可以进行批量烧写,并大大简化烧写过程,提高烧写效率。

【技术实现步骤摘要】
【专利摘要】本专利技术涉及flash的烧写
,具体涉及基于TF启动卡进行flash镜像自动烧写的方法。本专利技术在嵌入式Linux系统中,制作TF启动卡,设备采用TF启动卡启动,当设备启动时,系统先运行TF启动卡P2分区中的系统内核,并挂载P3分区中的根文件系统,然后将P1分区挂载到根文件系统下,利用集成在P3分区中的flash操控工具,将P1分区中的系统内核和根文件系统自动烧写到flash对应的分区上,可以进行批量烧写,并大大简化烧写过程,提高烧写效率。【专利说明】—种基于TF启动卡进行flash镜像自动烧写的方法
本专利技术涉及flash的烧写
,具体涉及基于TF启动卡进行flash镜像自动烧写的方法。
技术介绍
Flash在嵌入式系统中的应用越来越广泛,因为flash具有高容量、高稳定性和快速的读写的优点,所以flash已经成为主流的介质,但是由于嵌入式的设计已经介入了Iinux和WINCE量大操作系统,使这个文件变得庞大起来,所以将文件烧写到flash中就遇到了烧写瓶颈。以往flash的烧写,都是第一步用JTAG烧写bootloader,使最小系统加载bootloader后初始化各通信口后(如串口,网卡等),再由串口下载Iinux的内核,从而建立文件系统,然后通过网卡下载Iinux应用程序实现。而JTAG和串口由于是串行输入,同时也受到本身相关芯片速率的影响(MAX232芯片的速度比起flash的读写,速度慢多了),虽然bootloader+linux内核文件只有应用程序内容的1/8,但是造成烧写总时间却是应用程序时间8倍之多的局面,使整个烧写flash的时间无比漫长,而在bootloader没有烧写之前,串口和网口是不能与电脑主机通信的,而在没有烧写Iinux内核的前提下,网口虽然是可以与主机通信,但是由于未通过文件系统的排列,而使整个系统的引导文件未存在指定的位置上,造成不能启动Iinux情况出现。如果使用多个串口与电脑通信的方法,表面上是一个不错的选择,但是一台电脑只有2个串口,如果将一串口扩展成多个串口,可能造成下位机对上位机的反馈信号错误(可能一台下位机已经好了,但是还有一台没有写完,反馈给上位机却是烧写好的),所以此方法也行不通。而在嵌入式Linux系统中,flash的分区是在内核启动阶段即已完成,这要求烧写不同flash分区配置的系统时,上位机软件必须进行不同配置,每个分区的配置都需要调测人员通过连接串口和网口进行软件下载后,再烧写程序,这就需要反复插拔串口线、网线和开关电源,导致程序烧写过程中自动化程度不高。特别是在批量烧写的时候,如果采用人工手动烧写的方法,不仅耗费大量的人力物力,而且配置繁琐,烧写效率极低。
技术实现思路
为了解决上述技术问题,本专利技术通过可从TF卡启动系统的CPU上,利用TF启动卡启动系统后进行flash镜像的烧写,且通过TF卡上的启动系统可利用目标文件对自身进行更新的办法,实现无需人为进行重新制作TF启动卡即可对不同配置的flash目标系统进行烧写的目的。为了达到上述目的,本专利技术提供了,包括以下步骤: 步骤1:制作TF启动卡,将TF卡格式化成Pl分区、P2分区和P3分区,在Pl分区中存放需要烧写到flash中的目标文件,该目标文件包括系统内核镜像(含引导程序)文件和根文件系统压缩包,在P2中预装TF卡系统内核镜像(含引导程序)二进制数据流,在P3分区中预装TF卡系统的根文件系统; 步骤2:CPU上电进入倒计时状态,待CPU触发进入TF卡启动模式,CPU从TF启动卡P2分区加载弓I导程序和系统内核镜像,并启动系统内核; 步骤3:系统内核识别flash,并按P2分区的TF卡系统内核镜像二进制数据流中的配置对flash进行分区; 步骤4:系统内核程序启动完成,CPU从TF启动卡P3分区挂载根文件系统; 步骤5 =CPU将TF启动卡Pl分区挂载到根文件系统; 步骤6 =CPU判断TF启动卡Pl分区的系统内核镜像(含引导程序)文件与当前运行的系统内核是否一致,该当前运行的系统内核即TF卡P2分区中的系统内核镜像(含引导程序),若是,则执行步骤8,否则,执行步骤7 ; 步骤7:使用TF启动卡Pl分区的系统内核镜像(含引导程序)文件升级TF启动卡P2分区中的系统内核,执行步骤9 ; 步骤8:利用Iinux当前的根文件系统(即TF启动卡的P3分区)下的mtd工具、ubifs操控工具,将TF启动卡Pl分区的系统内核镜像文件和根文件系统压缩包分别烧录到flash的分区中,自动烧写成功; 步骤9:重启CPU系统,返回执行步骤2。进一步的,所述步骤I具体包括: 步骤11:将TF卡格式化成Pl分区、P2分区和P3分区,Pl分区为32MB,P2分区为32MB,P3分区为剩余空间, 步骤12:将Pl分区格式化成FAT格式,以兼容windows系统对Pl分区中文件操作;步骤13:将TF卡系统内核镜像(含引导程序)以二进制数据流复制到P2分区中,TF卡系统内核镜像(含引导程序)包括打包了的bootloader和系统内核的镜像文件linux_ivt.sb, 步骤14:将P3分区格式化成ext2格式,然后将TF卡系统的根文件系统压缩包压缩到P3分区中, 步骤15:将目标文件复制到Pl分区下,该目标文件包括系统内核镜像(含引导程序)文件和根文件系统压缩包,完成TF启动卡制作。进一步的,所述步骤2之前还包括步骤20:CPU上电后,进入倒计时状态,判断CPU是否为TF启动卡启动?如果是,则CPU触发进入TF卡启动模式,即执行步骤1,否则,CPU进入flash启动模式。更进一步的,所述flash启动模式包括以下步骤: 步骤Sll =CPU判断硬件配置是否从flash启动,若是,则执行步骤S12,否则执行步骤S13 ; 步骤S12:从flash的相应分区中加载系统内核和根文件系统,并运行系统,完成启动; 步骤S13:不运行任何系统,完成启动。本专利技术通过采用上述技术方案,与现有技术相比,具有如下优点: 1、本专利技术在嵌入式Linux系统中,制作TF启动卡,CPU采用TF启动卡启动,当CPU启动时,系统先运行TF启动卡P2分区中的系统内核,并挂载P3分区中的根文件系统,然后将Pl分区挂载到根文件系统下,利用集成在P3分区中的mtd工具、UbifS工具等flash操控工具,将Pl分区中的系统内核和根文件系统自动烧写到flash对应的分区上,可以进行批量烧写,并大大简化烧写过程,提高烧写效率。2、在烧写过程中,利用TF启动卡启动系统后进行flash镜像的烧写,且通过TF卡上的启动系统可利用目标文件对自身进行更新的办法,无需对上位机进行不同配置,无需对每个flash分区进行串口和网口进行软件下载后再烧写程序,不需要反复插拔串口线、网线和开关电源,使得flash程序烧写过程中自动化完成,实现无需人为进行重新制作TF启动卡即可对不同配置的flash目标系统进行烧写的目的。【专利附图】【附图说明】图1为本专利技术实施例的流程图; 图2为本专利技术实施例的TF启动卡的分区示意图; 图3为本专利技术实施例的在PC上制作TF启动卡的流程图; 图4为本专利技术实施例的CPU启本文档来自技高网
...

【技术保护点】
一种基于TF启动卡进行flash镜像自动烧写的方法,其特征在于,包括:步骤1:制作TF启动卡,将TF卡格式化成P1分区、P2分区和P3分区,在P1分区中存放需要烧写到flash中的目标文件,该目标文件包括系统内核镜像(含引导程序)文件和根文件系统压缩包,在P2中预装TF卡系统内核镜像(含引导程序)二进制数据流,在P3分区中预装TF卡系统的根文件系统;步骤2:CPU上电进入倒计时状态,待CPU触发进入TF卡启动模式,CPU从TF启动卡P2分区加载引导程序和系统内核镜像,并启动系统内核;步骤3:系统内核识别flash,并按P2分区的TF卡系统内核镜像二进制数据流中的配置对flash进行分区;步骤4:系统内核程序启动完成,CPU从TF启动卡P3分区挂载根文件系统;步骤5:CPU将TF启动卡P1分区挂载到根文件系统;步骤6:CPU判断TF启动卡P1分区的系统内核镜像(含引导程序)文件与当前运行的系统内核是否一致,若是,则执行步骤8,否则,执行步骤7;步骤7:使用TF启动卡P1分区的系统内核镜像(含引导程序)文件升级TF启动卡P2分区中的系统内核,执行步骤9;步骤8:利用linux系统下的mtd工具、ubifs操控工具,将TF启动卡P1分区的系统内核镜像文件和根文件系统压缩包分别烧录到flash的分区中,自动烧写成功;步骤9:重启CPU系统,返回执行步骤2。...

【技术特征摘要】

【专利技术属性】
技术研发人员:郑福弟任赋黄杭星林德辉唐磊许宁
申请(专利权)人:厦门雅迅网络股份有限公司
类型:发明
国别省市:福建;35

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

1