发明名称 |
一种嵌入式设备的启动升级方法 |
摘要 |
本发明公开了一种嵌入式设备的启动升级方法,嵌入式设备包括第一通讯串口和第二通讯串口,微处理器和存储模块;存储模块中存储有bootloader模块、操作系统和操作系统的内核;bootloader模块中设置有一组用于正常启动的环境变量组和一组用于升级的环境变量组;启动升级方法中包括了多种情形下的启动需求,因此可确保嵌入式设备的正常启动使用。同时由于启动升级方法中包括了用户端进行强制升级时的方法步骤,因此可在系统文件被破坏的情形下由用户进行强制升级,从而在用户端自行升级修复,而不再需要返回给原厂或维修网点处理,方便用户的使用。本发明的启动升级方法中,既能实现正常启动,又能实现强制升级,且不需要对产品增加硬件配置。 |
申请公布号 |
CN102722394B |
申请公布日期 |
2015.03.18 |
申请号 |
CN201210188122.9 |
申请日期 |
2012.06.08 |
申请人 |
深圳路迪网络有限公司 |
发明人 |
张其林 |
分类号 |
G06F9/445(2006.01)I |
主分类号 |
G06F9/445(2006.01)I |
代理机构 |
深圳新创友知识产权代理有限公司 44223 |
代理人 |
江耀纯 |
主权项 |
一种嵌入式设备的启动升级方法,所述嵌入式设备包括第一通讯串口和第二通讯串口,微处理器和存储模块;所述存储模块中存储有bootloader模块、操作系统和操作系统的内核;其特征在于:所述bootloader模块中设置有一组用于正常启动的环境变量组和一组用于升级的环境变量组;所述启动升级方法包括以下步骤: 开机时,所述微处理器检测用户的当前需求,判断所述当前需求的类型,所述微处理器和所述bootloader模块根据所述当前需求的类型进行相应动作: 1)如果为正常启动的启动需求,所述微处理器控制所述嵌入式设备正常工作; 2)如果为用户通过所述第一通讯串口选择相应启动方式的启动需求,所述bootloader模块直接按照用户选择的启动方式引导启动所述嵌入式设备; 3)如果为用户通过控制装置选择相应启动方式的启动需求,所述微处理器在设定时间段内每间隔设定周期往所述第二通讯串口写入数字; 4)如果为正常升级的升级需求,所述bootloader模块直接为当前环境变量赋上用于升级的环境变量组的值,进入升级过程; 5)如果为强制升级的升级需求,所述微处理器在设定时间段内每间隔设定周期往第二通讯串口写入设定字符; 在所述情形3)和所述情形5)中两种需求下,所述bootloader模块进行如下动作:351)所述bootloader模块初始化所述第二通讯串口,睡眠一段时间后,读取所述第二通讯串口;352)判断所述第二通讯串口上是否有数据,如果有数据,则进入步骤353);如果没有数据,则每睡眠一设定时间后循环读取并判断所述第二通讯串口是否有数据,直至有数据,则跳出循环进入步骤353);或者循环次数达到设定次数后仍没有数据,则跳出循环,所述bootloader模块按正常启动方式引导启动嵌入式设备; 353)所述bootloader模块根据所述第二通讯串口的数据进行相应的动作:当所述数据为设定字符,则所述bootloader模块为当前环境变量赋上用于升级的环境变量组的值,进入升级过程;当所述数据为数字时,所述bootloader模块根据所述数字对应的启动方式引导启动所述嵌入式设备; 升级时,从与所述嵌入式设备连接的外部存储设备中读取用于升级的数据包,依据所述数据包中的文件对所述内核和所述操作系统进行升级,完成升级过程; 所述存储模块中存储的内核为两个;升级时,依据所述数据包中的文件依次对所述两个内核和所述操作系统进行升级,完成升级操作。 |
地址 |
518000 广东省深圳市南山区科苑路清华信息港研发楼A栋8层西704 |