嵌入式系统设备程序烧写量产方法与流程

文档序号:14722465发布日期:2018-06-17 21:31阅读:1404来源:国知局

本发明涉及嵌入式系统设备生产技术领域,尤其涉及一种嵌入式系统设备程序烧写量产方法。



背景技术:

嵌入式系统设备是一种为特定应用而设计的专用计算机系统。设备能够适应实际应用中对功能、可靠性、成本、体积、功耗等严格要求。从硬件角度可认为嵌入式系统是一个控制程序存储在存储器中的嵌入式处理器控制板。从软件角度来讲,嵌入式操作系统负责嵌入式系统的全部软、硬件资源的分配、任务调度,控制、协调并发活动。

嵌入式系统设备在批量生产时,通常需要给目标板卡烧写程序,这道工序是保证嵌入式系统正常运行的必要步骤。现有的嵌入式系统设备量产方案中较为常见的是使用FLASH烧录器烧写存储芯片的方式,该方式具有量产速度快、易流水线操作、无使用难度等优点。但是该量产方式存在一定问题,如设备成本较高,需要在存储芯片焊接前烧写程序,生产流程难管理,程序版本难控制等问题,仅适用于大批量或超大批量生产使用。

另外一种较为常用的量产方式是使用下载器或者PC机连接至目标板卡通过烧录工具进行下载烧写程序。如图1所示,在量产烧写程序方案中需要使用到PC机及USB数据线和USBHUB等设备,并且在PC机端需要安装量产烧写工具。通过如图1中的连接方式,首先PC机端通过USB接口连接至USBHUB,另外扩展8路USB接口(连接个数由量产烧写工具软件决定),再分别连接至不同的目标板卡,将目标板卡通过跳线设置成下载模式,上电启动目标板卡,通过PC机端的量产烧写工具连接已识别的目标板卡,将准备好的目标镜像保存至待下载目录,在PC机端操作量产烧写工具软件,进行下载烧写,待烧写进度完成后断电即完成量产烧写工作。然而,图1所示的批量烧写方案,整套方案连接较为复杂,对外部设备有一定需求,同时软件操作步骤也存在一定复杂度。



技术实现要素:

因此,为克服现有技术存在的缺陷和不足,本发明提出一种更为可靠的嵌入式系统设备程序烧写量产方法。

具体地,本发明实施例提出的一种嵌入式系统设备程序烧写量产方法,包括步骤:(i)在将作为启动盘且存储有搬移程序和目标镜像的外部存储器连接至嵌入式系统设备的外部存储器接口并上电后,所述嵌入式系统设备的主控芯片从所述外部存储器启动执行所述外部存储器中的小内核镜像并自动执行所述搬移程序;(ii)通过所述搬移程序将所述目标镜像从所述外部存储器搬移至所述嵌入式系统设备的内部存储器中;以及(iii)在所述目标镜像搬移完成后给出提示并且所述嵌入式系统设备从内部存储器重新启动。

在本发明的一个实施例中,步骤(ii)具体包括:所述小内核镜像启动并自动执行所述搬移程序后,加载所述嵌入式系统设备的内部存储器参数并识别所述内部存储器是否为所述主控芯片可用;若加载识别失败,则报错;若加载识别成功,则格式化所述内部存储器的存储分区并在格式化后对所述目标镜像进行校验;若校验失败,则报错;以及若校验成功,则将所述目标镜像搬移至所述内部存储器。

在本发明的一个实施例中,所述嵌入式系统设备程序烧写量产方法还包括步骤:制作作为启动盘且存储有搬移程序和目标镜像的外部存储器且具体为:准备好目标镜像;在交叉编译环境中或者是Linux主机中编译预先定制好的小内核镜像,所述小内核镜像是用来承载所述目标镜像并且能够在所述外部存储器中自启动做文件搬移工作的Linux系统;将所述目标镜像打包成所述小内核镜像的文件系统;编写搬移程序并修改启动参数将系统配置成启动时自动运行搬移程序;将整个已配置好且包含目标镜像文件系统的小内核镜像在Linux主机环境下打包生成镜像文件;以及将目标存储器格式化为所述主控芯片可识别的启动盘并将所述镜像文件保存至所述启动盘以得到所述外部存储器。

在本发明的一个实施例中,所述外部存储器为SD卡或U盘。

在本发明的一个实施例中,所述嵌入式系统设备为LED显示屏显示控制用异步控制卡,所述主控芯片为ARM处理器。

由上可知,本发明实施例可以达成以下有益效果:1)使嵌入式系统设备批量烧写程序时更为便捷可靠;2)省去了嵌入式系统设备批量烧写程序时需要的PC机及USBHUB等设备;3)省去了嵌入式系统设备批量烧写程序时用户操作烧写工具的工序,并且避免了误操作等不定因素;4)嵌入式系统设备批量烧写程序时单次烧写个数的最大上限不受限,由SD卡个数决定;5)烧写程序版本维护管理变得更为方便;以及6)整个烧写过程更为直观简洁。

通过以下参考附图的详细说明,本发明的其它方面和特征变得明显。但是应当知道,该附图仅仅为解释的目的设计,而不是作为本发明的范围的限定。还应当知道,除非另外指出,不必要依比例绘制附图,它们仅仅力图概念地说明此处描述的结构和流程。

附图说明

下面将结合附图,对本发明的具体实施方式进行详细的说明。

图1为现有技术的一种嵌入式系统板卡批量烧写程序的方案示意图。

图2为本发明实施例的一种嵌入式系统板卡程序烧写量产方法的方案示意图。

图3为本发明实施例的目标板卡主控芯片执行SD卡中的小内核镜像并自动执行搬移程序的流程示意图。

图4为本发明实施例将SD卡中的目标镜像搬移至目标板卡存储芯片的过程示意图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。

本发明主要是在嵌入式系统板卡(一种嵌入式系统设备)程序烧写量产方案设计时考虑到使用方便、管理方便、维护方便等因素,从软硬件角度设计出的一套完整可行的方案;此处的嵌入式系统板卡例如是LED显示屏显示控制用异步控制卡。

如图2所示,本发明实施例提出的一种程序烧写量产方案外设部分仅需要使用到SD卡或其他可自启动的存储介质,该选择由目标板卡上的主控芯片例如ARM处理器决定,目标板卡需要预留出SD卡接口或者其他可自启动的外部存储器接口,例如:USB接口使用U盘存储介质,串口使用工装板等;这里以SD卡为存储介质为例进行说明,但其并非用来限制本发明。

在嵌入式系统板卡程序烧写量产之前,首先要做的准备工作是制作SD卡镜像文件。

第一步,先准备好目标镜像,也即待烧写至目标板卡的存储芯片的文件。

第二步,以Linux或Android系统为例,需要在交叉编译环境中或者是LINUX主机中编译预先定制好的小内核镜像;该小内核镜像是用来承载第一步中的目标镜像并且能够在SD卡中自启动做文件搬移工作的Linux系统。

第三步,将第一步中的目标镜像打包成第二步中的小内核镜像的文件系统。

第四步,编写好启动脚本,修改启动参数,将系统配置成启动时自动运行脚本,该脚本可自动搬移目标镜像至嵌入式系统板卡的存储芯片中,即实现自动烧写功能,并有烧写搬移成功提示,如LED指示灯闪烁或声音提示等。

第五步,将整个已配置好且包含目标镜像文件系统的小内核镜像在Linux主机环境下打包生成SD卡镜像文件。

第六步,将目标SD卡使用标准格式化工具格式化为目标板卡上的主控芯片可识别的启动盘,然后将SD卡镜像文件保存至该启动盘,整个SD卡制作完成。由此可见,SD卡被配置成存储有搬移程序和目标镜像的启动盘。

在准备好足够量作为启动盘且存储有前述SD镜像文件的SD卡后,进行目标板卡程序烧写量产过程:

a)目标板卡上电后主控芯片从插入目标板卡卡槽的SD卡启动(也即从外部存储器启动)执行SD卡中的小内核镜像并自动执行搬移程序;此处可以理解的是,目标板卡可以是默认从外部存储器启动,如果不是默认从外部存储器启动,则可以在目标板卡上将跳线设置成启动模式为外部存储器启动。

b)通过搬移程序将SD卡中的目标镜像搬移至目标板上的存储芯片例如FLASH存储器中;

c)目标镜像搬移完成后控制LED指示灯闪烁提示;以及

d)目标板卡从内部存储器重新启动,烧写搬移工作完成;此处目标板卡可以是在烧写搬移工作完成后自动配置为从内部存储器启动,当然如果此时不是自动配置为从内部存储器启动,则可以将目标板卡跳线设置为从内部存储器启动。

为便于更清楚的理解本发明实施例,下面结合图3对目标板卡主控芯片执行SD卡中的小内核镜像并自动执行搬移程序的过程进行详细说明:

首先小内核镜像启动时会自动执行搬移程序(或称搬移脚本),对目标板上的存储芯片做识别工作,加载存储芯片参数。以EMMC(EmbeddedMultiMediaCard,嵌入式多媒体卡)存储芯片为例,程序会加载存储空间大小,识别EMMC存储芯片是否为主控芯片可用,若加载识别存储芯片失败,则将LED指示灯控制为快闪报错,若加载识别存储芯片成功,则执行下一步格式化存储分区工作。按照目标镜像的分配情况自动执行分区脚本,以Android系统为例,可分为启动BOOTLOADER分区、启动参数分区、内核分区、文件系统分区、恢复分区,具体各个分区大小可根据具体文件调整。格式化存储分区后即可读取SD卡中的目标镜像,首先要做目标镜像的文件校验工作以保证目标镜像无误,文件校验失败则将LED指示灯控制为快闪报错,若文件校验成功则开始做搬移工作,将SD卡中的目标镜像搬移至目标板卡上的存储芯片中。搬移工作例如会分别执行BOOT文件搬移、内核文件及参数表搬移、文件系统搬移等,搬移完成后会将LED指示灯控制为慢闪以提示整个系统烧写搬移成功。

参见图4,其为SD卡中的目标镜像搬移至目标板卡的存储芯片例如FLASH存储器的过程示意图。在图4中,SD卡被插接至目标板卡SD卡槽内,SD卡中存储有搬移程序及目标镜像,SD卡在目标板卡上电启动时首先会自动运行搬移程序,该搬移程序会将SD卡中的另外一个区域中的目标镜像烧写至FLASH存储器中(如图4中虚线箭头所示),烧写完成后,会控制点亮目标板卡上的LED指示灯等,并闪烁提示烧写完成。

由上可知,本发明实施例可以达成以下有益效果:1)使嵌入式系统设备批量烧写程序时更为便捷可靠;2)省去了嵌入式系统设备批量烧写程序时需要的PC机及USBHUB等设备;3)省去了嵌入式系统设备批量烧写程序时用户操作烧写工具的工序,并且避免了误操作等不定因素;4)嵌入式系统设备批量烧写程序时单次烧写个数的最大上限不受限,由SD卡个数决定;5)烧写程序版本维护管理变得更为方便;以及6)整个烧写过程更为直观简洁。

以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1