很多時候,我們會面臨由于操作不當導致的系統(tǒng)無法使用,或者由于調(diào)試需要而重新燒寫內(nèi)核等問題,這些問題的解決有相當?shù)牟襟E性,基本都是實踐操作,沒什么理論原理,粵嵌嵌入式整理出來,備大家使用。
1,準備好正常可用的根文件系統(tǒng),比如web_rootfs.img,放置在windows某一目錄下,比如 D:BSP 下 2,在windows啟動軟件tftpd32,選擇正確的(即當前windows正在使用的)IP地址,并將下載目錄設(shè)置為 D:BSP
3,啟動開發(fā)板,在uboot開始加載內(nèi)核的倒數(shù)3秒鐘內(nèi)按下任意鍵進入uboot菜單。
4,擦除壞掉的根文件系統(tǒng)(以粵嵌GEC210開發(fā)板 或 2440/210雙核實驗箱為例):
nand erase 0xe00000 0x20000000
一定要注意不要手抖,把地址寫錯了。擦掉后系統(tǒng)會自動重啟,同樣3秒內(nèi)按任意鍵再次進入uboot菜單。
5,設(shè)置uboot的網(wǎng)絡(luò)相關(guān)參數(shù):
set serverip xx.xx.xx.xx (windows的IP地址)
set ipadd r yy.yy.yy.yy (開發(fā)板 / 實驗箱的IP地址)
save
他們必須在同一網(wǎng)段。
6,將windows備好的根文件系統(tǒng)通過 tftp 下載到開發(fā)板/實驗箱的內(nèi)存中:
tftp 0x40000000 web_rootfs.img
此后會有一大堆類似這樣的井號:
###############################################################################################
大概一炷香時間,你會看到終下載了多少個字節(jié),比如 0x6bf0580
7,將內(nèi)存中的根文件系統(tǒng),寫入nand flash中:
nand write.yaffs 0x40000000 0xe00000 0x6bf0580
8,啟動開發(fā)板 / 實驗箱,成功!感覺離征服世界又近了一點!