本发明专利技术涉及一种嵌入式系统自引导启动方法,包括:101)启动BOOT;103)检验并判断指定位置是否存在配置文件、是进入下一步,否则进入105);104)将配置文件中参数写入系统内部固定存储器,并将参数引导传进OS,进入106);105)将系统内部固定存储器中保存的参数引导传进OS;106)OS按照参数配置硬件。这种方法突破传统思路,将硬件配置内化于启动过程并由BOOT引导传进参数给OS,能无须重新编译,解决嵌入式系统硬件匹配问题。
【技术实现步骤摘要】
本专利技术涉及智能电子产品的软硬件系统,具体涉及ー种嵌入式系统引导程序(BOOT)启动方法。
技术介绍
在嵌入式的系统中,针对不同的双倍速率同步动态随机存储器(DDR)、闪存(FLASH)型号、液晶(LCD)显示屏、耳机座的极性,以及配置操作系统(OS)的分区大小、注册表区空间大小、FLASH分区大小、CPU频率设定、LOGO区大小、格式化FLASH可选配置、是否启用系统引导双备份、匹配地图所需的用来自定义系统属性的“ 0EMINF0”信息等。目前针对不同硬件,几乎所有的业内公司都是采用对应的程序员,重新修改代码,并编译出相应的程序,即重新编译的方式,才可以达到匹配硬件,配置OS相关信息的目的。但是,这种方式不可避免地造成以下技术问题I、増加研发成本,因为需要许多程序员来进行修改代码和重新编译的动作;2、出版生产软件的效率不高,因为每次针对不同硬件都需要重新修改代码,每ー次的代码改动都需要重新进行测试;3、影响了出货速度。另ー方面,引导加载程序(BOOT)是系统加电后运行的第一段软件代码。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。而BOOT是严重地依赖于硬件而实现的,特别是在嵌入式世界,没有在嵌入式世界里还没有ー个通用的BOOT或这种BOOT被公开。
技术实现思路
本专利技术需要解决的技术问题是,如何提供ー种嵌入式系统自引导启动方法,无须重新编译、能克服或大大降低硬件匹配问题。本专利技术的上述技术问题这样解决构建ー种嵌入式系统自引导启动方法,包括以下具体步骤101)启动,进入系统引导加载;103)检验并判断指定位置是否存在配置文件?是进入下一歩,否则进入步骤105);104)将所述配置文件中參数写入嵌入式系统内部固定存储器,并将所述參数引导传进OS,进入步骤106);105)将嵌入式系统内部固定存储器中保存的參数引导传进OS ;106) OS按照被传进的參数配置硬件。按照本专利技术提供的自引导启动方法,所述指定位置是外部数据源,该自引导启动方法还包括步骤102)检验并判断是否存在外部数据源?是进入下一歩,否则进入步骤105)。按照本专利技术提供的自引导启动方法,所述外部数据源是外插USB卡、外插内存卡、无线或网络连接的数据存储装置。 按照本专利技术提供的自引导启动方法,所述指定位置是内部数据源,该自引导启动方法还包括删除所述指定位置的配置文件。按照本专利技术提供的自引导启动方法,所述固化存储器是FLASH、电可擦除程序存储器(EEPROM)或 INAND。按照本专利技术提供的自引导启动方法,所述配置硬件包括将对应參数写入硬件的控制寄存器中。按照本专利技术提供的自引导启动方法,所述配置文件包括但不限制于以下ニ种形式(一 )所述配置文件包括嵌入式系统支持所有硬件对应參数的穷举和每一同种类型多选ー的使能;( ニ)所述配置文件是嵌入式系统具体一套硬件对应參数的排列。按照本专利技术提供的自引导启动方法,该自引导启动方法还包括通过人机交互界面选择硬件并将对应參数、參数排列或对应參数使能写入所述配置文件。按照本专利技术提供的自引导启动方法,该嵌入式操作系统包括但不限制于是LINUX/安卓(ANDROID)/视窗 8 (Windows 8)/Windows CE 操作系统。按照本专利技术提供的自引导启动方法,所述启动包括机器上电和复位。本专利技术提供的嵌入式系统自引导启动方法,突破传统思路,将利用參数文件进行硬件配置内化于系统启动过程并由BOOT引导传进OS,较现有技术具有以下优势I、不需要重新修改代码然后重新编译,只需要修改配置文件里面的某些參数,便可以兼容不同的硬件设备,可以大大提高研发效率;2、产品软件维护成本大大降低;原本需要几个高级工程师来维护的软件,使用此技术后,只需要I 2个软件配置员即可完成。甚至エ厂客户端有个别需求吋,也可以自己修改配置文件,不需要提交到研发部重新出软件。3、加快客户定单成品出货速度;来接到不同客户的定单需求后,不需要単独针对此客户修改代码、编译,研发部出生产软件的效率大大加快,而且提交到测试组测试的项目也会相应减少,最終的效果,就是成品定单出货速度大大加快;4、由于现有硬件技术的提高、处理能力的大幅加強,不影响正常系统启动和启动速度。附图说明下面结合附图和具体实施例进ー步对本专利技术进行详细说明图I是本专利技术优选实施例的开机引导软件程序流程示意图。具体实施例方式首先,说明本专利技术核心和基础(一 )參数存储在BOOT程序引导升级时,如果发现有B00TA5. Dat等配置文件,则会去读取文件内关于DDR、FLASH型号、IXD显示屏、耳机座的极性,以及配置OS的分区大小、注册表区空间大小、FLASH分区大小、CPU频率设定、LOGO区大小、格式化FLASH可选配置、是否启用系统引导双备份、匹配地图所需的0EMINF0信息等相关信息,并将其存储到FLASH的某个地方内。( ニ) 动态配置升级结束后重新开机,BOOT程序会读取升级时存储的DDR,FLASH等信息,并将參数传到OS层,OS再通过这些參数来匹配硬件,然后开机。(三)配置文件下面部分举例,详情请參考具体产品对应的Boot技术配置手册①比如DDR參数,在B00TA5.Dat里面,"8,12,13,15,18,20,28,38,42,43,44,49,50,51,52,TIM(53)DdrMask 0x003ElC40,0xl014B100DdrParam 0x03000000,0x00020008,0x00040700,0x00000c02, OxlaOOOOOO,0x06000000,0x00C8001c,0x00010000,0x02000204,0x03000701,0x02030300,0x04000000,0x00000400,0x04420000,0x00000442,0x04000510有可以灵活配置DDR參数的接ロ,如果新换了 DDR,调试參数的时候,只需要在DdrMask位中增加对其的使能,(将该位写为I)然后在DdrParam中增加该參数,或者在现有參数中改变參数,可以匹配不同的DDR.比如配置FLASH分区大小,在B00TA5. Dat里面②比如LCD屏參数,在B00TA5. DAT中,用LcdType,Param : 0x00000001来描述其类型,在BOOT显示升级界面的时候,先读此參数,并按照此參数,将此參数对应的屏显參数调出来写入控制LCD的寄存器中。升级结束后,BOOT程序会将LCD的參数Userlnfo =OxOl "000005,(引号中的值)传入OS,OS调出预先配置好的IXD寄存器值,重新配置IXD的显示。第二,结合本专利技术具体实施例进行详细说明如图I所示,本专利技术具体实施例电子产品使用FLASH保存默认的配置文件,其开机引导软件程序包括以下具体步骤301)BOOT 启动;302)检验并判断是否插卡?是进入下一歩,否则进入步骤305);303)检验并判断卡内是否存在配置文件?是进入下一歩,否则进入步骤305);304)将所述配置文件中參数写入FLASH,并将所述參数引导传进OS,进入步骤306);305)将FLASH保存的參数引导传进O本文档来自技高网...
【技术保护点】
【技术特征摘要】
【专利技术属性】
技术研发人员:王尤巧,
申请(专利权)人:深圳市掌讯通讯设备有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。