一種智能手表的fota升級方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供了一種智能手表的FOTA升級方法及系統(tǒng),方法包括:智能手表開機(jī)運(yùn)行時(shí),若需要對固件升級時(shí),則將FOTA更新標(biāo)志寫入到NOR Flash,并重啟系統(tǒng);啟動Bootloader,根據(jù)FOTA更新標(biāo)志從云端下載固件數(shù)據(jù),將固件數(shù)據(jù)保存至智能手表的RAM中,將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng)。本發(fā)明實(shí)現(xiàn)了在采用MCU+RTOS的智能手表中Flash空間有限的情況下,對固件數(shù)據(jù)進(jìn)行升級,無需占用更多Flash空間;而且在Bootloader中進(jìn)行升級,可使用更多的RAM空間存放下載的固件數(shù)據(jù),方便用戶升級。
【專利說明】
_種智能手表的FOT A升級方法及系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及智能手表技術(shù)領(lǐng)域,尤其涉及一種智能手表的FOTA升級方法及系統(tǒng)。
【背景技術(shù)】
[0002]目前手機(jī)、平板電腦、便攜式媒體播放器、移動互聯(lián)網(wǎng)設(shè)備固件升級服務(wù)普遍采用FOTACFirmware Over-The-Air,固件空中下載技術(shù))升級。移動終端的固件空中下載技術(shù)升級,指通過云端升級技術(shù),為具有連網(wǎng)功能的設(shè)備,如手機(jī),平板電腦升級軟件,完成系統(tǒng)修復(fù)和優(yōu)化。
[0003]目前的空中下載技術(shù)升級的一般流程是通過網(wǎng)絡(luò)檢查軟件更新版本->如有更新軟件版本時(shí),通過網(wǎng)絡(luò)下載更新軟件_>保存更新軟件到設(shè)備Flash ->下載完成后重新啟動設(shè)備-> 在Bootloader模式或者Recovery模式下升級系統(tǒng)軟件_>升級成功后重啟機(jī)器,完成升級。
[0004]該方法對于有較大容量Flash來說是一個(gè)好的方案,但對于Flash容量有限的使用MCU+RT0S的智能手表來說,卻不是一個(gè)好的選擇。因?yàn)橐话鉓CU+RT0S的智能手表考慮成本和需要直接執(zhí)行程序,使用的Flash—般是NOR Flash,其容量是2M-16M,智能手表執(zhí)行程序和資源文件要占用2/3的Flash空間,剩余的1/3 flash要給保存數(shù)據(jù)的文件系統(tǒng)使用。如果按照FOTA Flash空間要求也要占用1/3的空間,那么Flash就沒有剩余的空間用于FOTA了。
[0005]因此,現(xiàn)有技術(shù)還有待改進(jìn)和發(fā)展。
【發(fā)明內(nèi)容】
[0006]鑒于上述現(xiàn)有技術(shù)的不足之處,本發(fā)明的目的在于提供一種智能手表的FOTA升級方法及系統(tǒng),旨在解決現(xiàn)有技術(shù)中智能手表進(jìn)行FOTA升級時(shí),若直接將固件數(shù)據(jù)下載至NorFlash中時(shí)會存在空間不足的問題。
[0007]為了達(dá)到上述目的,本發(fā)明采取了以下技術(shù)方案:
一種智能手表的FOTA升級方法,其中,所述方法包括以下步驟:
A、智能手表開機(jī)運(yùn)行時(shí),若需要對固件升級時(shí),則將FOTA更新標(biāo)志寫入到NORFlash,并重啟系統(tǒng);
B、啟動Bootloader,根據(jù)FOTA更新標(biāo)志從云端下載固件數(shù)據(jù),將固件數(shù)據(jù)保存至智能手表的RAM中,將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng)。
[0008]所述智能手表的FOTA升級方法,其中,所述步驟A具體包括:
Al、智能手表開機(jī)運(yùn)行時(shí),則發(fā)送固件的版本檢查指令到云端;
A2、云端接收所述版本檢查指令,并反饋固件的最新版本號至智能手表;
A3、判斷智能手表中的當(dāng)前版本號是否低于固件的最新版本號,當(dāng)智能手表中的當(dāng)前版本號低于固件的最新版本號時(shí)則執(zhí)行步驟A4,當(dāng)智能手表中的當(dāng)前版本號不低于固件的最新版本號時(shí)則執(zhí)行步驟A7; A4、在智能手表的顯示屏上彈出一提示用戶是否進(jìn)行固件升級的提示框;
A5、對用戶是否選擇固件升級進(jìn)行檢測,當(dāng)檢測到固件升級指令時(shí)則執(zhí)行步驟A6,當(dāng)未檢測到固件升級指令時(shí)則執(zhí)行步驟A7;
A6、將FOTA更新標(biāo)志寫入到NOR Flash,并重啟系統(tǒng);
A7、結(jié)束。
[0009]所述智能手表的FOTA升級方法,其中,所述步驟B具體包括:
B1、啟動Boot loader ;
B2、檢測NOR Flash中是否有FOTA更新標(biāo)志,當(dāng)NOR Flash中有FOTA更新標(biāo)志時(shí)則執(zhí)行步驟B3,當(dāng)NOR Flash中無FOTA更新標(biāo)志時(shí)則執(zhí)行步驟B7;
B3、智能手表向云端發(fā)送固件數(shù)據(jù)的下載請求;
B4、智能手表接收來自云端的固件數(shù)據(jù),并保存到RAM中;
B5、判斷來自云端的固件數(shù)據(jù)是否接收完成,當(dāng)固件數(shù)據(jù)接收完成時(shí)則執(zhí)行步驟B6,當(dāng)固件數(shù)據(jù)未接收完成時(shí)則返回執(zhí)行步驟B4;
B6、將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng);
B7、結(jié)束。
[0010]所述智能手表的FOTA升級方法,其中,所述NOR Flash的數(shù)據(jù)容量為2-16M。
[0011]一種智能手表的FOTA升級系統(tǒng),其中,包括:
更新標(biāo)志寫入模塊,用于智能手表開機(jī)運(yùn)行時(shí),若需要對固件升級時(shí),則將FOTA更新標(biāo)志寫入到NOR Flash,并重啟系統(tǒng);
固件數(shù)據(jù)升級模塊,用于啟動Bootloader,根據(jù)FOTA更新標(biāo)志從云端下載固件數(shù)據(jù),將固件數(shù)據(jù)保存至智能手表的RAM中,將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng)。
[0012]所述智能手表的FOTA升級系統(tǒng),其中,所述更新標(biāo)志寫入模塊具體包括:
版本檢查指令發(fā)送單元,用于智能手表開機(jī)運(yùn)行時(shí),則發(fā)送固件的版本檢查指令到云端;
版本號反饋單元,用于云端接收所述版本檢查指令,并反饋固件的最新版本號至智能手表;
版本號比較單元,用于判斷智能手表中的當(dāng)前版本號是否低于固件的最新版本號,當(dāng)智能手表中的當(dāng)前版本號低于固件的最新版本號時(shí)則啟動提示單元,當(dāng)智能手表中的當(dāng)前版本號不低于固件的最新版本號時(shí)則啟動第一結(jié)束控制單元;
提示單元,用于在智能手表的顯示屏上彈出一提示用戶是否進(jìn)行固件升級的提示框;固件升級指令檢測單元,用于對用戶是否選擇固件升級進(jìn)行檢測,當(dāng)檢測到固件升級指令時(shí)則啟動寫入控制單元,當(dāng)未檢測到固件升級指令時(shí)則啟動第一結(jié)束控制單元;
寫入控制單元,將FOTA更新標(biāo)志寫入到NOR Flash,并重啟系統(tǒng);
第一結(jié)束控制單元,用于結(jié)束進(jìn)程。
[0013]所述智能手表的FOTA升級系統(tǒng),其中,所述固件數(shù)據(jù)升級模塊具體包括: Bootloader啟動單元,用于啟動Bootloader;
更新標(biāo)志檢測單元,用于檢測NOR Flash中是否有FOTA更新標(biāo)志,當(dāng)NOR Flash中有FOTA更新標(biāo)志時(shí)則啟動下載請求單元,當(dāng)NOR Flash中無FOTA更新標(biāo)志時(shí)則啟動第二結(jié)束控制單元;
下載請求單元,用于智能手表向云端發(fā)送固件數(shù)據(jù)的下載請求;
數(shù)據(jù)存儲單元,用于智能手表接收來自云端的固件數(shù)據(jù),并保存到RAM中;
接收判斷單元,用于判斷來自云端的固件數(shù)據(jù)是否接收完成,當(dāng)固件數(shù)據(jù)接收完成時(shí)則啟動固件數(shù)據(jù)寫入單元,當(dāng)固件數(shù)據(jù)未接收完成時(shí)則啟動數(shù)據(jù)存儲單元;
固件數(shù)據(jù)寫入單元,用于將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng);
第二結(jié)束控制單元,用于結(jié)束進(jìn)程。
[0014]所述智能手表的FOTA升級系統(tǒng),其中,所述NOR Flash的數(shù)據(jù)容量為2-16M。
[0015]本發(fā)明所述的智能手表的FOTA升級方法及系統(tǒng),方法包括:智能手表開機(jī)運(yùn)行時(shí),若需要對固件升級時(shí),則將FOTA更新標(biāo)志寫入到NOR Flash,并重啟系統(tǒng);啟動Bootloader,根據(jù)FOTA更新標(biāo)志從云端下載固件數(shù)據(jù),將固件數(shù)據(jù)保存至智能手表的RAM中,將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng)。本發(fā)明實(shí)現(xiàn)了在采用MCU+RT0S的智能手表中Flash空間有限的情況下,對固件數(shù)據(jù)進(jìn)行升級,無需占用更多Flash空間;而且在Bootloader中進(jìn)行升級,可使用更多的RAM空間存放下載的固件數(shù)據(jù),方便用戶升級。
【附圖說明】
[0016]圖1為本發(fā)明所述智能手表的FOTA升級方法較佳實(shí)施例的流程圖。
[0017]圖2為本發(fā)明所述智能手表的FOTA升級系統(tǒng)較佳實(shí)施例的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0018]本發(fā)明提供一種智能手表的FOTA升級方法及系統(tǒng),為使本發(fā)明的目的、技術(shù)方案及效果更加清楚、明確,以下參照附圖并舉實(shí)施例對本發(fā)明進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0019]請參考圖1,其為本發(fā)明所述智能手表的FOTA升級方法較佳實(shí)施例的流程圖。如圖1所示,所述智能手表的FOTA升級方法,包括以下步驟:
步驟S100、智能手表開機(jī)運(yùn)行時(shí),若需要對固件升級時(shí),則將FOTA更新標(biāo)志寫入到NORFlash,并重啟系統(tǒng)。
[°02°]步驟S200、啟動Bootloader,根據(jù)FOTA更新標(biāo)志從云端下載固件數(shù)據(jù),將固件數(shù)據(jù)保存至智能手表的RAM中,將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng)。
[0021]在嵌入式操作系統(tǒng)中,BootloadeK即系統(tǒng)啟動前引導(dǎo)程序)是在操作系統(tǒng)內(nèi)核運(yùn)行之前運(yùn)行。可以初始化硬件設(shè)備、建立內(nèi)存空間映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個(gè)合適狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境。在嵌入式系統(tǒng)中,通常并沒有像B1S那樣的固件程序(注,有的嵌入式CPU也會內(nèi)嵌一段短小的啟動程序),因此整個(gè)系統(tǒng)的加載啟動任務(wù)就完全由BootLoader來完成。
[0022]而NOR Flash是現(xiàn)在市場上兩種主要的非易失閃存技術(shù)之一<Jntel于1988年首先開發(fā)出NOR Flash技術(shù),徹底改變了原先由EPR0M(Erasable Programmable Read-Only-Memory電可編程序只讀存儲器)和EEPROM(電可擦只讀存儲器Electrical Iy ErasableProgrammable Read - Only Memory)一統(tǒng)天下的局面。緊接著,1989年,東芝公司發(fā)表了NAND Flash結(jié)構(gòu),強(qiáng)調(diào)降低每比特的成本,有更高的性能,并且像磁盤一樣可以通過接口輕松升級。NOR Flash的特點(diǎn)是芯片內(nèi)執(zhí)行(XIP ,eXecute In Place),這樣應(yīng)用程序可以直接在Flash閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中。NOR的傳輸效率很高,在I?4MB的小容量時(shí)具有很高的成本效益。
[0023]本發(fā)明的實(shí)施例中,所述NORFlash的數(shù)據(jù)容量為2-16M。
[0024]在智能手表正常運(yùn)行時(shí),在智能手表中有一個(gè)后臺任務(wù)定時(shí)檢查是否需進(jìn)行固件升級的,故在智能手表正常運(yùn)行時(shí)檢測可以確保版本更新的及時(shí)性。當(dāng)檢查到有版本更新,提醒用戶更新,如果用戶選擇更新,則FOTA更新標(biāo)志寫入到NOR Flash,重啟系統(tǒng)更新。如果用戶沒有選擇更新,則只是提醒用戶。
[0025]在步驟S200中,當(dāng)Bootloader啟動時(shí),檢查是否有FOTA更新標(biāo)志,如果有則進(jìn)入FOTA更新流程,更新時(shí)先發(fā)送更新請求命令到云端,然后開始從云端下載數(shù)據(jù)到RAM,當(dāng)數(shù)據(jù)下載完成后,檢查數(shù)據(jù)無誤后,寫入到NOR Flash,然后清除FOTA升級標(biāo)志,重啟系統(tǒng),進(jìn)入正常系統(tǒng)。
[0026]由于是在Bootloader中進(jìn)行FOTA升級,由于智能手表中的系統(tǒng)未全部運(yùn)行,可以使用更多的RAM用于存放下載的固件數(shù)據(jù)以進(jìn)行升級。同時(shí),F(xiàn)0TA升級不占用額外的Flash空間,降低了產(chǎn)品成本。
[0027]進(jìn)一步的,在所述智能手表的FOTA升級方法中,所述步驟S100具體包括:
步驟SlOl、智能手表開機(jī)運(yùn)行時(shí),則發(fā)送固件的版本檢查指令到云端;
步驟S102、云端接收所述版本檢查指令,并反饋固件的最新版本號至智能手表;
步驟S103、判斷智能手表中的當(dāng)前版本號是否低于固件的最新版本號,當(dāng)智能手表中的當(dāng)前版本號低于固件的最新版本號時(shí)則執(zhí)行步驟S104,當(dāng)智能手表中的當(dāng)前版本號不低于固件的最新版本號時(shí)則執(zhí)行步驟S107;
步驟S104、在智能手表的顯示屏上彈出一提示用戶是否進(jìn)行固件升級的提示框;
步驟S105、對用戶是否選擇固件升級進(jìn)行檢測,當(dāng)檢測到固件升級指令時(shí)則執(zhí)行步驟S106,當(dāng)未檢測到固件升級指令時(shí)則執(zhí)行步驟S107;
步驟S106、將FOTA更新標(biāo)志寫入到NOR Flash,并重啟系統(tǒng);
步驟S107、結(jié)束。
[0028]進(jìn)一步的,在所述智能手表的FOTA升級方法中,所述步驟S200具體包括:
步驟 S201、啟動Bootloader ;
步驟S202、檢測NOR Flash中是否有FOTA更新標(biāo)志,當(dāng)NOR Flash中有FOTA更新標(biāo)志時(shí)則執(zhí)行步驟S203,當(dāng)NOR Flash中無FOTA更新標(biāo)志時(shí)則執(zhí)行步驟S207;
步驟S203、智能手表向云端發(fā)送固件數(shù)據(jù)的下載請求;
步驟S204、智能手表接收來自云端的固件數(shù)據(jù),并保存到RAM中;
步驟S205、判斷來自云端的固件數(shù)據(jù)是否接收完成,當(dāng)固件數(shù)據(jù)接收完成時(shí)則執(zhí)行步驟S206,當(dāng)固件數(shù)據(jù)未接收完成時(shí)則返回執(zhí)行步驟S204;
步驟S206、將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng);
步驟S207、結(jié)束。
[0029]基于上述方法實(shí)施例,本發(fā)明還提供了一種智能手表的FOTA升級系統(tǒng)。如圖2所示,所述智能手表的FOTA升級系統(tǒng),包括:
更新標(biāo)志寫入模塊100,用于智能手表開機(jī)運(yùn)行時(shí),若需要對固件升級時(shí),則將FOTA更新標(biāo)志寫入到NOR Flash,并重啟系統(tǒng);
固件數(shù)據(jù)升級模塊200,用于啟動Boot loader,根據(jù)FOTA更新標(biāo)志從云端下載固件數(shù)據(jù),將固件數(shù)據(jù)保存至智能手表的RAM中,將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng)O
[0030]進(jìn)一步的,在所述智能手表的FOTA升級系統(tǒng)中,所述更新標(biāo)志寫入模塊100具體包括:
版本檢查指令發(fā)送單元,用于智能手表開機(jī)運(yùn)行時(shí),則發(fā)送固件的版本檢查指令到云端;
版本號反饋單元,用于云端接收所述版本檢查指令,并反饋固件的最新版本號至智能手表;
版本號比較單元,用于判斷智能手表中的當(dāng)前版本號是否低于固件的最新版本號,當(dāng)智能手表中的當(dāng)前版本號低于固件的最新版本號時(shí)則啟動提示單元,當(dāng)智能手表中的當(dāng)前版本號不低于固件的最新版本號時(shí)則啟動第一結(jié)束控制單元;
提示單元,用于在智能手表的顯示屏上彈出一提示用戶是否進(jìn)行固件升級的提示框;固件升級指令檢測單元,用于對用戶是否選擇固件升級進(jìn)行檢測,當(dāng)檢測到固件升級指令時(shí)則啟動寫入控制單元,當(dāng)未檢測到固件升級指令時(shí)則啟動第一結(jié)束控制單元;
寫入控制單元,將FOTA更新標(biāo)志寫入到NOR Flash,并重啟系統(tǒng);
第一結(jié)束控制單元,用于結(jié)束進(jìn)程。
[0031]進(jìn)一步的,在所述智能手表的FOTA升級系統(tǒng)中,所述固件數(shù)據(jù)升級模塊200具體包括:
Bootloader啟動單元,用于啟動Bootloader;
更新標(biāo)志檢測單元,用于檢測NOR Flash中是否有FOTA更新標(biāo)志,當(dāng)NOR Flash中有FOTA更新標(biāo)志時(shí)則啟動下載請求單元,當(dāng)NOR Flash中無FOTA更新標(biāo)志時(shí)則啟動第二結(jié)束控制單元;
下載請求單元,用于智能手表向云端發(fā)送固件數(shù)據(jù)的下載請求;
數(shù)據(jù)存儲單元,用于智能手表接收來自云端的固件數(shù)據(jù),并保存到RAM中;
接收判斷單元,用于判斷來自云端的固件數(shù)據(jù)是否接收完成,當(dāng)固件數(shù)據(jù)接收完成時(shí)則啟動固件數(shù)據(jù)寫入單元,當(dāng)固件數(shù)據(jù)未接收完成時(shí)則啟動數(shù)據(jù)存儲單元;
固件數(shù)據(jù)寫入單元,用于將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng);
第二結(jié)束控制單元,用于結(jié)束進(jìn)程。
[0032]進(jìn)一步的,在所述智能手表的FOTA升級系統(tǒng)中,所述NORFlash的數(shù)據(jù)容量為2_16M。
[0033]綜上所述,本發(fā)明所述的智能手表的FOTA升級方法及系統(tǒng),方法包括:智能手表開機(jī)運(yùn)行時(shí),若需要對固件升級時(shí),則將FOTA更新標(biāo)志寫入到NOR Flash,并重啟系統(tǒng);啟動Boot loader,根據(jù)FOTA更新標(biāo)志從云端下載固件數(shù)據(jù),將固件數(shù)據(jù)保存至智能手表的RAM中,將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng)。本發(fā)明實(shí)現(xiàn)了在采用MCU+RTOS的智能手表中Flash空間有限的情況下,對固件數(shù)據(jù)進(jìn)行升級,無需占用更多Flash空間;而且在Bootloader中進(jìn)行升級,可使用更多的RAM空間存放下載的固件數(shù)據(jù),方便用戶升級。
[0034]可以理解的是,對本領(lǐng)域普通技術(shù)人員來說,可以根據(jù)本發(fā)明的技術(shù)方案及本發(fā)明構(gòu)思加以等同替換或改變,而所有這些改變或替換都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
【主權(quán)項(xiàng)】
1.一種智能手表的FOTA升級方法,其特征在于,所述方法包括以下步驟: A、智能手表開機(jī)運(yùn)行時(shí),若需要對固件升級時(shí),則將FOTA更新標(biāo)志寫入到NORFlash,并重啟系統(tǒng); B、啟動Bootloader,根據(jù)FOTA更新標(biāo)志從云端下載固件數(shù)據(jù),將固件數(shù)據(jù)保存至智能手表的RAM中,將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng)。2.根據(jù)權(quán)利要求1所述智能手表的FOTA升級方法,其特征在于,所述步驟A具體包括: Al、智能手表開機(jī)運(yùn)行時(shí),則發(fā)送固件的版本檢查指令到云端; A2、云端接收所述版本檢查指令,并反饋固件的最新版本號至智能手表; A3、判斷智能手表中的當(dāng)前版本號是否低于固件的最新版本號,當(dāng)智能手表中的當(dāng)前版本號低于固件的最新版本號時(shí)則執(zhí)行步驟A4,當(dāng)智能手表中的當(dāng)前版本號不低于固件的最新版本號時(shí)則執(zhí)行步驟A7; A4、在智能手表的顯示屏上彈出一提示用戶是否進(jìn)行固件升級的提示框; A5、對用戶是否選擇固件升級進(jìn)行檢測,當(dāng)檢測到固件升級指令時(shí)則執(zhí)行步驟A6,當(dāng)未檢測到固件升級指令時(shí)則執(zhí)行步驟A7; A6、將FOTA更新標(biāo)志寫入到NOR Flash,并重啟系統(tǒng); A7、結(jié)束。3.根據(jù)權(quán)利要求1所述智能手表的FOTA升級方法,其特征在于,所述步驟B具體包括: B1、啟動Boot loader ; B2、檢測NOR Flash中是否有FOTA更新標(biāo)志,當(dāng)NOR Flash中有FOTA更新標(biāo)志時(shí)則執(zhí)行步驟B3,當(dāng)NOR Flash中無FOTA更新標(biāo)志時(shí)則執(zhí)行步驟B7; B3、智能手表向云端發(fā)送固件數(shù)據(jù)的下載請求; B4、智能手表接收來自云端的固件數(shù)據(jù),并保存到RAM中; B5、判斷來自云端的固件數(shù)據(jù)是否接收完成,當(dāng)固件數(shù)據(jù)接收完成時(shí)則執(zhí)行步驟B6,當(dāng)固件數(shù)據(jù)未接收完成時(shí)則返回執(zhí)行步驟B4; B6、將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng); B7、結(jié)束。4.根據(jù)權(quán)利要求1所述智能手表的FOTA升級方法,其特征在于,所述NORFlash的數(shù)據(jù)容量為2-16M。5.一種智能手表的FOTA升級系統(tǒng),其特征在于,包括: 更新標(biāo)志寫入模塊,用于智能手表開機(jī)運(yùn)行時(shí),若需要對固件升級時(shí),則將FOTA更新標(biāo)志寫入到NOR Flash,并重啟系統(tǒng); 固件數(shù)據(jù)升級模塊,用于啟動Bootloader,根據(jù)FOTA更新標(biāo)志從云端下載固件數(shù)據(jù),將固件數(shù)據(jù)保存至智能手表的RAM中,將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng)。6.根據(jù)權(quán)利要求5所述智能手表的FOTA升級系統(tǒng),其特征在于,所述更新標(biāo)志寫入模塊具體包括: 版本檢查指令發(fā)送單元,用于智能手表開機(jī)運(yùn)行時(shí),則發(fā)送固件的版本檢查指令到云端; 版本號反饋單元,用于云端接收所述版本檢查指令,并反饋固件的最新版本號至智能手表; 版本號比較單元,用于判斷智能手表中的當(dāng)前版本號是否低于固件的最新版本號,當(dāng)智能手表中的當(dāng)前版本號低于固件的最新版本號時(shí)則啟動提示單元,當(dāng)智能手表中的當(dāng)前版本號不低于固件的最新版本號時(shí)則啟動第一結(jié)束控制單元; 提示單元,用于在智能手表的顯示屏上彈出一提示用戶是否進(jìn)行固件升級的提示框; 固件升級指令檢測單元,用于對用戶是否選擇固件升級進(jìn)行檢測,當(dāng)檢測到固件升級指令時(shí)則啟動寫入控制單元,當(dāng)未檢測到固件升級指令時(shí)則啟動第一結(jié)束控制單元;寫入控制單元,將FOTA更新標(biāo)志寫入到NOR Flash,并重啟系統(tǒng); 第一結(jié)束控制單元,用于結(jié)束進(jìn)程。7.根據(jù)權(quán)利要求5所述智能手表的FOTA升級系統(tǒng),其特征在于,所述固件數(shù)據(jù)升級模塊具體包括: Bootloader啟動單元,用于啟動Bootloader; 更新標(biāo)志檢測單元,用于檢測NOR Flash中是否有FOTA更新標(biāo)志,當(dāng)NOR Flash中有FOTA更新標(biāo)志時(shí)則啟動下載請求單元,當(dāng)NOR Flash中無FOTA更新標(biāo)志時(shí)則啟動第二結(jié)束控制單元; 下載請求單元,用于智能手表向云端發(fā)送固件數(shù)據(jù)的下載請求; 數(shù)據(jù)存儲單元,用于智能手表接收來自云端的固件數(shù)據(jù),并保存到RAM中; 接收判斷單元,用于判斷來自云端的固件數(shù)據(jù)是否接收完成,當(dāng)固件數(shù)據(jù)接收完成時(shí)則啟動固件數(shù)據(jù)寫入單元,當(dāng)固件數(shù)據(jù)未接收完成時(shí)則啟動數(shù)據(jù)存儲單元; 固件數(shù)據(jù)寫入單元,用于將RAM中的固件數(shù)據(jù)寫入NOR Flash,清除FOTA更新標(biāo)志,并重啟系統(tǒng); 第二結(jié)束控制單元,用于結(jié)束進(jìn)程。8.根據(jù)權(quán)利要求5所述智能手表的FOTA升級系統(tǒng),其特征在于,所述NORFlash的數(shù)據(jù)容量為2-16M。
【文檔編號】G06F9/445GK106020861SQ201610291723
【公開日】2016年10月12日
【申請日】2016年5月5日
【發(fā)明人】黃艷鋒
【申請人】惠州Tcl移動通信有限公司