本發明專利技術屬于嵌入式軟件技術領域,尤其涉及一種嵌入式設備重新燒寫應用程序的方法及系統。本發明專利技術嵌入式設備重新燒寫應用程序的方法,包括:步驟a:將升級程序分為燒寫環境監測程序和燒寫程序,燒寫環境監測程序存儲在文件系統,燒寫程序存儲在外接存儲設備中;步驟b:獲取輸入事件,判斷輸入事件中是否有啟動應用程序分區燒寫的事件,如果有啟動應用程序分區燒寫的事件,則進入步驟c,否則,重新獲取輸入事件;步驟c:判斷外接存儲設備是否存在待燒寫文件,如果存在,進入步驟d,否則,返回步驟b;步驟d:調用外接存儲設備中的燒寫程序,開始燒寫待燒寫文件到嵌入式設備的FALSH中。本發明專利技術的有益效果在于:在應用程序分區損壞的情況下也能夠正常運行,滿足升級和修復應用程序分區的需要,并且還可以隨時更改燒寫程序,運用更加自由靈活。
【技術實現步驟摘要】
本專利技術屬于嵌入式軟件
,尤其涉及一種嵌入式設備重新燒寫應用程序的 方法及系統。
技術介紹
在專用的嵌入式板子運行GNU/Linux系統已經變得越來越流行。一個嵌入式 Linux系統從軟件的角度看通常可以分為四個層次,包括引導程序包括固化在固件(firmware)中的boot代碼和Boot Loader兩大部分, 其中,boot代碼為可選。Linux內核針對于嵌入式板子的定制內核以及內核的啟動參數。文件系統包括根文件系統和建立于Flash內存設備之上文件系統,通常用ram disk作為根文件系統。用戶應用程序特定于用戶的應用程序。有時,在用戶應用程序和內核層之間可能還會包括一個嵌入式圖形用戶界面。其中引導程序、Linux內核、文件系統三個部分一般都是只讀,不可進行寫入操作, 只有用戶應用程序是可寫。在產品研發階段,嵌入式設備應用程序分區的燒寫都需要借助PC,在電腦中通過 串口或網口與嵌入式設備取得通信后,鍵入燒寫指令,再指明燒寫的BIN文件來進行應用 程序分區的燒錄。產品研發完成,交付用戶使用后,如果在用戶使用過程中如果需要進行軟件升級, 也就是對嵌入式設備應用程序分區的燒寫新的應用程序,則調用應用程序分區中的升級程 序,將存儲在外接存儲設備中的BIN文件燒寫到應用程序分區。但是,如果一旦應用程序分 區出現問題,例如數據丟失、分區損壞等,存儲在應用程序分區中的升級程序就不能夠正常 運行,從而導致用戶不能夠通過軟件升級的方式來更新應用程序分區,這樣就必須拆開嵌 入式設備的外殼,接入串口或網線,并在PC端鍵入燒寫指令等操作,這給用戶的使用帶來 極大的不便。
技術實現思路
本專利技術提供了一種嵌入式設備重新燒寫應用程序的方法及系統,旨在解決現有技 術中由于應用程序分區出現問題,用戶不能夠通過軟件升級的方式來更新應用程序分區, 需要重新借助PC鍵入燒寫指令,給用戶帶來極大不便的問題。本專利技術是這樣實現的,一種嵌入式設備重新燒寫應用程序的方法,包括步驟a 將升級程序分為燒寫環境監測程序和燒寫程序,燒寫環境監測程序存儲 在文件系統,燒寫程序存儲在外接存儲設備中;步驟b 獲取輸入事件,判斷輸入事件中是否有啟動應用程序分區燒寫的事件,如 果有啟動應用程序分區燒寫的事件,則進入步驟c,否則,重新獲取輸入事件;步驟c 判斷外接存儲設備是否存在待燒寫文件,如果存在,進入步驟d,否則,返 回步驟b ;步驟d:調用外接存儲設備中的燒寫程序,開始燒寫待燒寫文件到嵌入式設備的 FALSH 中。本專利技術的技術方案還包括在所述步驟b和c之間還包括判斷當前系統中是否 存在外接存儲設備,如果存在外接存儲設備,則掛載外接存儲設備,獲取外接存儲設備中的 文件列表,并進入步驟c,否則,返回步驟b。本專利技術的技術方案還包括在所述步驟c和d之間還包括判斷待燒寫文件是否 完整,如果待燒寫文件完整,則進入步驟d,否則,提示用戶待燒寫文件不完整,燒寫失敗。本專利技術的技術方案還包括所述步驟c具體包括判斷外接存儲設備是否存在待 燒寫文件和校驗文件,如果存在,進入步驟d,否則,返回步驟b ;在所述步驟c和d之間還包 括根據校驗文件判斷待燒寫文件是否完整,如果待燒寫文件完整,則進入步驟d,否則,提 示用戶待燒寫文件不完整,燒寫失敗。本專利技術的技術方案還包括所述校驗文件是記錄有待燒寫文件的大小信息的文本 文件,所述判斷待燒寫文件是否完整具體包括從校驗文件記錄的信息中讀取出待燒寫文 件的大小,再通過系統函數調用獲取到待燒寫文件的大小,比較兩個文件大小是否相同,如 果兩個文件大小相同,則存儲在外接設備中的待燒寫文件完整。本專利技術采取的另一技術方案為一種嵌入式設備重新燒寫應用程序的系統,包括 燒寫環境監測模塊和燒寫模塊,所述燒寫環境監測模塊用于監測輸入事件,并判斷輸入事 件中是否有啟動應用程序分區燒寫的事件,以及當存在啟動應用程序分區燒寫的事件時啟 動燒寫模塊的燒寫程序,所述燒寫模塊用于在燒寫程序啟動后調用燒寫指令,燒寫待燒寫 文件到嵌入式設備的FALSH中。本專利技術的技術方案還包括所述燒寫環境監測模塊位于文件系統中,所述燒寫模 塊位于外接存儲設備中。本專利技術的技術方案還包括所述燒寫模塊還用于在燒寫程序啟動之后與調用燒寫 指令之前判斷待燒寫文件是否完整,以及在待燒寫文件完整時才調用燒寫指令,燒寫待燒 寫文件到嵌入式設備的FALSH中。本專利技術的技術方案還包括所述燒寫環境監測模塊還用于判斷當前系統中是否存 在外接存儲設備以及外接存儲設備是否存在燒寫程序、待燒寫文件及記錄有待燒寫文件的 大小信息的文本文件,如果不存在外接存儲設備、燒寫程序、待燒寫文件或記錄有待燒寫文 件的大小信息的文本文件,則重新獲取輸入事件。本專利技術的技術方案還包括所述燒寫模塊判斷待燒寫文件是否完整具體包括從 記錄有待燒寫文件的大小信息的文本文件中讀取出待燒寫文件的大小,再通過系統函數調 用獲取到待燒寫文件的大小,比較兩個文件大小是否相同,如果兩個文件大小相同,則存儲 在外接設備中待燒寫文件完整。本專利技術的技術方案具有如下優點或有益效果本專利技術嵌入式設備重新燒寫應用程 序的方法及系統將升級程序分為燒寫環境監測程序和燒寫程序并分別存儲,燒寫環境監測 程序占用的存儲空間較少,并不容易損壞可以保證燒寫環境監測程序的穩定,燒寫程序存 儲在移動存儲設備中,避免嵌入式設備存儲空間不足,在應用程序分區損壞的情況下也能5夠正常運行,滿足升級和修復應用程序分區的需要,并且還可以隨時更改燒寫程序,運用更 加自由靈活。附圖說明附圖1是本專利技術嵌入式設備重新燒寫應用程序的方法的流程圖;附圖2是本專利技術嵌入式設備重新燒寫應用程序的系統的結構示意圖;附圖3是本專利技術嵌入式設備重新燒寫應用程序的系統的燒寫環境監測模塊的工 作原理圖;附圖4是本專利技術嵌入式設備重新燒寫應用程序的系統的燒寫模塊的工作原理圖。 具體實施例方式為了使本專利技術的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對 本專利技術進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本專利技術,并 不用于限定本專利技術。請參閱圖1,是本專利技術嵌入式設備重新燒寫應用程序的方法的流程圖。本專利技術嵌入 式設備重新燒寫應用程序的方法具體包括以下步驟步驟101 將升級程序分為燒寫環境監測程序CheckKey和燒寫程序FlashReset, 其中,燒寫環境監測程序CheckKey存儲在文件系統中,燒寫程序FlashReset存儲在外接存 儲設備中;在步驟101中,燒寫環境監測程序CheckKey存在于文件系統中,因此應用程序分 區的改變不會對該程序有任何影響,且每次開機時都會在系統的后臺運行,其主要功能是 監測各類輸入事件,判斷輸入事件中是否有啟動應用程序分區燒寫的事件。其中,外接存儲設備中還存儲有應用程序分區BIN文件及存儲BIN文件大小信息 的文本文件。該應用程序分區BIN文件就是待燒寫文件,一般為應用程序數據文件或者更 新程序數據文件,用于燒寫到應用程序分區;該文本文件為校驗文件,其記錄有應用程序分 區BIN文件的大小信息,由相關人員預先根據待燒寫的應用程序分區BIN文件編寫得到,用 于驗證應用程序分區BIN文件是否完整。步驟102 獲取輸入事件,判斷輸入事件中是否有啟動應用程序分區燒寫的事件,本文檔來自技高網...
【技術保護點】
一種嵌入式設備重新燒寫應用程序的方法,包括:步驟a:將升級程序分為燒寫環境監測程序和燒寫程序,燒寫環境監測程序存儲在文件系統,燒寫程序存儲在外接存儲設備中;步驟b:獲取輸入事件,判斷輸入事件中是否有啟動應用程序分區燒寫的事件,如果有啟動應用程序分區燒寫的事件,則進入步驟c,否則,重新獲取輸入事件;步驟c:判斷外接存儲設備是否存在待燒寫文件,如果存在,進入步驟d,否則,返回步驟b;步驟d:調用外接存儲設備中的燒寫程序,開始燒寫待燒寫文件到嵌入式設備的FALSH中。
【技術特征摘要】
【專利技術屬性】
技術研發人員:王洋,
申請(專利權)人:TCL集團股份有限公司,
類型:發明
國別省市:44[中國|廣東]
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。