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