CN100571430C - 一种实现移动通信终端开机进度条功能的方法 - Google Patents
一种实现移动通信终端开机进度条功能的方法 Download PDFInfo
- Publication number
- CN100571430C CN100571430C CNB2007101297091A CN200710129709A CN100571430C CN 100571430 C CN100571430 C CN 100571430C CN B2007101297091 A CNB2007101297091 A CN B2007101297091A CN 200710129709 A CN200710129709 A CN 200710129709A CN 100571430 C CN100571430 C CN 100571430C
- Authority
- CN
- China
- Prior art keywords
- progress bar
- time
- refresh
- code
- refreshes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Telephone Function (AREA)
Abstract
本发明公开了实现移动通信终端开机进度条的方法,包括以下步骤:(1)开机事件发生时,初始化每个存储器的接口和时钟,并进行开机事件检测;(2)根据不同的开机事件进入对应的开机模式,并把整个终端的代码从非掉电易失性存储器中复制到动态存储器中,同时,激活并显示进度条,根据复制的块数进行进度条的刷新;(3)代码复制完毕后,暂停刷新进度条,进行全部硬件初始化;当完成所有任务初始化时,通过设置定时器或者设置参考点函数的方式,继续刷新进度条,直到整个进度条刷新完毕,然后进入待机界面。从而解决移动终端用户从开机按键到出现待机界面的长时间屏幕没有变化的问题,同时按照电脑用户的使用习惯给用户以亲切感。
Description
技术领域
本发明属于移动通信终端的技术领域,涉及一种移动通信终端开机进度条的实现方法。
背景技术
移动通信终端的开机时间较长是当前用户抱怨比较多的问题。移动通信终端通常会按照最初的直接复制完闪存中的代码后再进行开机画面的显示,而这个过程比较长,会导致用户以为终端存在故障。
由于系统运行速度的要求,现在的移动通信终端基本都是非掉电易失性存储器NAND FLASH加上SDRAM(Synchronous Dynamic randomaccess memory同步动态随机存储器)的配置,基于这个前提,当前的移动通信终端在开机流程的处理上做了优化,基本都是按照专利号为:CN200610069465的专利所述的方法实现,分成两级加载程序:第一级加载程序(一般称为bootloader)代码长度比较短,是由硬件直接从NANDFLASH拷贝代码到主芯片内部的SRAM(STATIC RANDOM ACCESSMEMORY静态随机访问存储器),然后执行第一级加载程序(bootloader),第一级加载程序初始化存储器接口和时钟,并负责把第二级加载程序拷贝到SDRAM中,并把PC指针置到第二级加载程序的起始地址;然后开始运行第二级加载程序,第二级加载程序点亮LCD(LiquidCrystal Display液晶显示器)并显示开机图片,并把剩余的代码从NANDFLASH复制到SDRAM中。当全部代码拷贝完毕,运行实时操作系统。
虽然这种方法把开机图片很快就在屏幕上显示,但由于当前的移动终端系统都比较复杂,代码长度动则几十M字节,再加上系统初始化,到文件系统建立起来,一般需要20s的时间。用户会觉得开机时间太长,因为整个过程中屏幕上没有任何动作,从心理学上来说,用户没有得到任何信息反馈,所以尤其感觉漫长。
本发明就是要给用户及时的反馈,实现如电脑操作系统在开机过程中进度条效果,从主观上减少用户的等待时间,进而带给用户良好的操作体验。
发明内容
本发明要解决的技术问题是提供一种实现移动通信终端开机进度条的方法,解决移动通信终端用户从开机按键到出现待机界面的长时间屏幕没有任何变化的问题,同时按照电脑用户的使用习惯给用户以亲切感。
为了解决上述问题,本发明提供了一种实现移动通信终端开机进度条的方法,应用于由包括:非掉电易失性存储器,动态存储器,电源管理芯片,显示屏,微处理器和外设所组成的移动通信终端,其中,包括以下步骤:
(1)开机事件发生时,初始化每个存储器的接口和时钟,并进行开机事件检测;
(2)根据不同的开机事件进入对应的开机模式,并把整个终端的代码从非掉电易失性存储器中复制到动态存储器中,同时,激活并显示进度条,根据复制的块数进行进度条的刷新;
(3)代码复制完毕后,暂停刷新进度条,进行全部硬件初始化;当完成所有任务初始化时,通过设置定时器或者设置参考点函数的方式,继续刷新进度条,直到整个进度条刷新完毕,然后进入待机界面;
其中,所述步骤(2)中,所述根据复制的块数进行进度条刷新,包括:用复制的块数除以该过程中刷新的进度条长度L1即得到刷新一次进度条所拷贝的块数,根据所得到的此块数进行刷新;
所述步骤(3)中,所述设置定时器的方式继续刷新进度条,包括:设置定时器,通过启动时间的计算,用从完成所有任务初始化到进入待机界面的时间T2除以过程中刷新的进度条长度L2即得到定时器的时间间隔,从而以这个时间间隔刷新进度条;
所述步骤(3)中,通过设置参考点函数的方式继续刷新进度条,包括:在系统启动程序中抽取函数作为启动程序进展的参考点,执行到之前抽取时指定的参考点函数,就进行进度条刷新操作,以此反映启动程序的执行情况
进一步的,本发明所述的方法,其中,所述开机事件,包括:终端上电、系统复位或按开机键;
其中,计划刷新的总进度条长度为L;从开始拷贝代码到代码拷贝完毕的时间为T1;从完成所有任务初始化到进入待机界面的时间为T2;从代码拷贝完毕到完成所有任务的初始化完毕的时间为t;从显示第一张开机图片到系统进入待机界面的时间T=t+T1+T2;
其中,计划刷新的总进度条长度为L;从开始拷贝代码到代码拷贝完毕的时间为T1;从完成所有任务初始化到进入待机界面的时间为T2;从代码拷贝完毕到完成所有任务的初始化完毕的时间为t;从显示第一张开机图片到系统进入待机界面的时间T=t+T1+T2;
进一步的,本发明所述的方法,其中,从代码拷贝完毕到完成所有任务的初始化完毕的时间为t在计算中忽略不计;
进一步的,本发明所述的方法,其中,如果有些时间点的函数无法抽取,则通过某个函数触发有限个定时器进行进度条刷新。
采用本发明所述方法,与现有技术相比,本发明给予用户及时的反馈,实现如电脑操作系统在开机过程中进度条效果,从主观上减少用户的等待时间,带给用户良好的操作体验。
附图说明
图1为本发明实施例中手机的硬件连接框图;
图2为本发明实施例中第一级加载程序的流程图;
图3为本发明实施例中整个开机过程中各阶段示意图。
具体实施方式
本发明为了解决传统技术方案存在的弊端,通过以下具体实施例进一步阐述本发明所述的一种实现移动通信终端开机进度条的方法,以下对具体实施方式进行详细描述,但不作为对本发明的限定。
如图1所示,本发明实现移动通信终端开机进度条的方法,包括:存储程序代码和文件系统的非掉电易失性存储器NAND FLASH 5,具有读写速度快优势的用来执行程序的动态存储器SDRAM 6,电源管理芯片1,LCD显示屏3,微处理器4(包括:SRAM 41和ROM 42)和外设2,其中,开机后,系统向NAND FLASH 5注入包括:第一级加载程序(一般称为bootloader),含有进度条刷新功能的第二级加载程序(这里称为secondboot),含有进度条刷新功能的系统启动程序(这里称为systemup);
所述第一级加载程序,初始化存储器接口和时钟,进行开机事件检测,并把第二级加载程序复制到SDRAM中;
所述含有进度条刷新功能的第二级加载程序,根据各个开机事件进入不同的开机模式,点亮LCD背光并显示不同的开机图片,然后开始拷贝整个终端的代码;在拷贝的过程中,根据拷贝的block块数,进行刷新进度条,同时根据客户的需要显示第二张开机图片,并指示执行系统启动程序;
所述含有进度条刷新功能的系统启动程序,用于进行全部硬件初始化,当完成所有任务初始化时,设置定时器,通过启动时间的计算,以等时间间隔的方式刷新进度条,直到进度条刷新到100%,然后进入待机界面。
如图2所示,为本发明实施例中第一级加载程序的流程图。其具体实施方式为:
步骤201,手机上电、系统复位或按开机键以及其他开机事件发生时,微处理器内部ROM(Read-Only Memory只读存储器)固化的程序将第一级加载程序(bootloader)从NAND FLASH复制到内部静态存储器中;
第一级加载程序必须小于8K字节,而且要放在NAND FLASH的第一个BLOCK,这是微处理器的特征要求的;
以下步骤202至步骤207,为执行第一级加载程序:
步骤202,初始化存储器接口和时钟;
步骤203,进行开机事件检测;所述开机时间为上述手机上电、系统复位或按开机键以及其他开机事件;
步骤204,是否为正常开机,如果是,则执行步骤206;否则,执行步骤205;
步骤205,关机;
步骤206,把第二级加载程序复制到SDRAM;将开机事件和当前复制的block数放到指定位置;
步骤207,把PC指针置到第二级加载程序的起始地址;
步骤208,执行第二级加载程序,主要包括:
(1)根据不同开机事件进入不同的开机模式;
(2)点亮LCD背光并显示开机图片;
(3)开始复制终端的代码,根据发明内容中计算的block间隔数刷新进度条;
(4)复制完毕把PC指针置到系统启动程序的入口。
如附图2所述的实施例,执行完第二级加载程序,PC指针置到系统启动程序的入口后,则开始执行系统启动程序,主要包括以下步骤:
(1)各硬件时钟配置,初始化GPIO、射频、USB等硬件;
(2)进行任务初始化;
(3)根据图3所示的实施例内容计算的时间间隔设置定时器,当定时器发生中断时,进行进度条刷新;
(4)当计数器达到L2时,除能定时器,进入待机界面;
由于程序在升级的过程中,系统启动程序的执行时间有可能改变,所以对于上述执行系统启动程序实现,还存在一种备选方案,通过抽取函数的实现方法:
(1)各硬件时钟配置,初始化GPIO、射频、USB等硬件;
(2)进行任务初始化;
(3)从任务初始化完毕到进入待机界面之间的代码中,在满足一定时间间隔的条件下,抽取N个函数。如果恰好能抽取L2个函数,则可以令N=L2,针对每个抽取函数都刷新一个进度条;如果函数不好抽取,第i个函数可以触发定时器,第i个定时器刷新Ki个进度条。为了满足刷新L2的要求,需要
(4)当进度条刷新完毕,进入待机界面。
如图3所示,为本发明实施例中整个开机过程中各阶段示意图。本发明根据从显示第一张开机图片到系统进入待机界面的时间统筹安排了进度条刷新进度,在第二级加载程序中按照拷贝的block块数进行刷新,而在任务初始化完毕通过定时器的方式进行进度条的刷新。
如图3中所示:从显示第一张开机图片到系统进入待机界面的时间为T;
从代码拷贝完毕到完成所有任务的初始化完毕的时间为t;
从开始拷贝代码到代码拷贝完毕的时间为T1;
从完成所有任务初始化到进入待机界面的时间为T2;
计划刷新的总进度条长度为L;
则有,T=t+T1+T2;
从上面的开机过程可以看出,从代码拷贝完毕到完成所有任务的初始化完毕这段时间里,并没有刷新进度条,这是因为这段时间加入LCD刷新操作会带来不稳定的因素,而且计数器并没有初始化完毕;由于代码拷贝完毕到系统启动程序完成所有任务的初始化完毕之间的时间很短,一般有0.5秒的时间,所以这种停顿对用户来说是可以接受的;因此,由于t很小,在计算中忽略;
在T2过程中需要刷新的进度条长度为记为L2。
那么,在二级记载程序中,用总代码长度的block数除以L1即可得到拷贝多少个block刷新一次进度条。而在系统启动程序中,用T2除以L2即可得到定时器的时间间隔,从而以这个时间间隔刷新进度条。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (6)
1、一种实现移动通信终端开机进度条的方法,应用于由非掉电易失性存储器,动态存储器,电源管理芯片,显示屏,微处理器和外设所组成的移动通信终端,其特征在于,包括以下步骤:
(1)开机事件发生时,初始化每个存储器的接口和时钟,并进行开机事件检测;
(2)根据不同的开机事件进入对应的开机模式,并把整个终端的代码从非掉电易失性存储器中复制到动态存储器中,同时,激活并显示进度条,根据复制的块数进行进度条的刷新;
(3)代码复制完毕后,暂停刷新进度条,进行全部硬件初始化;当完成所有任务初始化时,通过设置定时器或者设置参考点函数的方式,继续刷新进度条,直到整个进度条刷新完毕,然后进入待机界面;
其中,所述步骤(2)中,所述根据复制的块数进行进度条刷新,包括:用复制的块数除以该过程中刷新的进度条长度L1即得到刷新一次进度条所拷贝的块数,根据所得到的此块数进行刷新;
所述步骤(3)中,所述设置定时器的方式继续刷新进度条,包括:设置定时器,通过启动时间的计算,用从完成所有任务初始化到进入待机界面的时间T2除以过程中刷新的进度条长度L2即得到定时器的时间间隔,从而以这个时间间隔刷新进度条;
所述步骤(3)中,通过设置参考点函数的方式继续刷新进度条,包括:在系统启动程序中抽取函数作为启动程序进展的参考点,执行到之前抽取时指定的参考点函数,就进行进度条刷新操作,以此反映启动程序的执行情况。
2、如权利要求1所述的方法,其特征在于,所述开机事件,包括:终端上电、系统复位或按开机键。
5、如权利要求3或4所述的方法,其特征在于,从代码拷贝完毕到完成所有任务的初始化完毕的时间为t在计算中忽略不计。
6、如权利要求1所述的方法,其特征在于,如果所在时间点的函数无法抽取,则通过该函数触发定时器进行进度条刷新,以保证总刷新次数等于L2。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101297091A CN100571430C (zh) | 2007-07-24 | 2007-07-24 | 一种实现移动通信终端开机进度条功能的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101297091A CN100571430C (zh) | 2007-07-24 | 2007-07-24 | 一种实现移动通信终端开机进度条功能的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101094477A CN101094477A (zh) | 2007-12-26 |
CN100571430C true CN100571430C (zh) | 2009-12-16 |
Family
ID=38992427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007101297091A Expired - Fee Related CN100571430C (zh) | 2007-07-24 | 2007-07-24 | 一种实现移动通信终端开机进度条功能的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100571430C (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101827163B (zh) * | 2009-03-04 | 2013-07-03 | 深圳富泰宏精密工业有限公司 | 手机资源数据动态加载系统及方法 |
CN101957716A (zh) * | 2010-05-31 | 2011-01-26 | 宇龙计算机通信科技(深圳)有限公司 | 一种移动终端启动程序的方法、系统及移动终端 |
CN101976170B (zh) * | 2010-10-28 | 2016-02-10 | 中兴通讯股份有限公司 | 一种多媒体终端开机界面的显示方法及其装置 |
CN102722360A (zh) * | 2011-03-31 | 2012-10-10 | 比亚迪股份有限公司 | 一种移动终端及其对外插附件的管理方法 |
CN103793283A (zh) * | 2012-11-05 | 2014-05-14 | 重庆重邮信科通信技术有限公司 | 一种终端故障处理方法及相关装置 |
CN103729212A (zh) * | 2013-12-12 | 2014-04-16 | 乐视致新电子科技(天津)有限公司 | 一种开机图标的显示方法及显示设备 |
-
2007
- 2007-07-24 CN CNB2007101297091A patent/CN100571430C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101094477A (zh) | 2007-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100571430C (zh) | 一种实现移动通信终端开机进度条功能的方法 | |
US8522004B2 (en) | Method and system for power management for a handheld mobile electronic device executing-in-place an application kernel from execute-in-place non-volatile memory (XIP NVM) | |
US9098301B2 (en) | Electronic device and booting method | |
CN1946210B (zh) | 开机快速启动并显示的td-scdma手机及其实现方法 | |
US20100138838A1 (en) | Method for executing scheduled task | |
US8291250B2 (en) | Management of power states in a portable computing device | |
CN103118188A (zh) | 应用心跳周期调整方法及装置、终端 | |
CN102622079A (zh) | 一种休眠方法、唤醒方法和移动终端设备 | |
CN107479700B (zh) | 黑屏手势控制方法、装置、存储介质及移动终端 | |
CN108040292A (zh) | 电视待机开机方法、电视及计算机可读存储介质 | |
CN106708616A (zh) | 进程控制方法和进程控制装置 | |
JPH04362716A (ja) | システム再起動装置 | |
WO2020093868A1 (zh) | 多核芯片、系统,及其方法和存储介质 | |
CN106598783A (zh) | 一种智能终端的显示控制方法、装置及智能终端 | |
CN104156248A (zh) | 一种在开机过程中显示定制化信息的方法和bios芯片 | |
CN104216802B (zh) | 一种内存数据库恢复方法和设备 | |
CN105159722A (zh) | Rtc唤醒系统的方法及计算机 | |
WO2021175194A1 (zh) | 终端定时开机的方法及终端 | |
CN100518198C (zh) | 加快手机启动响应速度的方法 | |
CN1963834A (zh) | 信息显示装置 | |
CN108536271B (zh) | 一种降低功耗的方法、装置及存储介质 | |
CN108132803B (zh) | 基于移动终端的定时保活及唤醒方法、系统、终端及介质 | |
CN106557365A (zh) | 自适应相同页内存合并方法及其电子装置 | |
CN112783274B (zh) | 智能手表及其控制装置、控制方法 | |
CN101414284A (zh) | 数据保护方法及其存取权限管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091216 Termination date: 20160724 |
|
CF01 | Termination of patent right due to non-payment of annual fee |