ESM335x是一款面向工業(yè)領域的高性價比嵌入式主板,以TI的AM3354為其硬件核心,ESM335x通過預裝完整的操作系統(tǒng)及接口驅動,為用戶構造了可直接使用的通用嵌入式核心平臺。
WEC7系統(tǒng)平臺下,用戶應用程序開發(fā)直接使用Microsoft提供的著名軟件開發(fā)工具Visual Studio 2008進行, 用戶應用程序開發(fā)完成后,參考《ESM335x工控主板使用必讀(WEC7)》一文可設置板卡自動運行用戶應用程序模式。在實際應用中,由于種種原因可能會導致用戶應用程序的損壞或丟失,從而導致用戶程序無法正常啟動,本文著重介紹一個確保應用程序安全啟動的方案以及操作過程。
在這個方案中首先是要考慮用戶應用程序的備份,在運行模式下,用戶程序都是下載到335x系統(tǒng)的\\Nandflash目錄進行啟動的,安全啟動用戶程序的方案中需要用一個外設存儲器:MicroSD卡或USB,首選用MicroSD卡,用來存儲應用程序以及相關文件的備份,備份目錄的名稱統(tǒng)一為\\update。
在SD卡或USB上建好\\update 目錄,然后將所有應用程序及相關文件復制到該目錄下,注意該目錄下一定要包含有userinfo.txt。
應用程序啟動失敗一般有兩種情況,一種是userinfo.txt或者應用程序exe文件丟失,一種是應用程序exe文件損壞。該方案均可實現(xiàn)這兩種異常情況的自動恢復功能,其中exe文件是否損壞是通過驗證exe文件的CRC32來進行判斷,對執(zhí)行文件exe進行CRC驗證不是系統(tǒng)的缺省配置,需要調(diào)用系統(tǒng)內(nèi)部的工具程序gcrc32.exe對CRC32驗證功能進行使能。使能的方法為:telnet登錄到ESM335x板卡,然后執(zhí)行gcrc32程序,如:
gcrc32所帶參數(shù)為用戶應用程序的文件名(這里為sysinfo.exe),文件名稱無需帶上所在存儲設備的路徑名稱,即該文件在\\Nandflash 、\\SDMemory或\\USBDisk 目錄下,gcrc32.exe運行完成后,則會在user.exe所在目錄下自動生成對應的user.crc文件,并同時啟動了應用程序CRC32驗證功能。
在出現(xiàn)上述的兩種啟動異常的情況下,系統(tǒng)則會執(zhí)行自動復制備份文件到\\Nandflash 下的功能,來進行應用程序的自動恢復,如果備份文件不存在,則無法完成自動恢復功能。若在進行備份文件復制過程中出現(xiàn)文件COPY失敗,系統(tǒng)則會自動對\\Nandflash進行格式化的操作,格式化后系統(tǒng)重啟再重新進行備份文件的自動恢復。備份文件恢復成功后,系統(tǒng)將自動重啟,重新進入到應用程序正常啟動的狀態(tài)。
本方案對于EM335x、EM3352等335x系列主板同樣有效。
-
嵌入式主板
+關注
關注
7文章
6085瀏覽量
35296
發(fā)布評論請先 登錄
相關推薦
評論