基於U-boot完成NandFlash裸板程序燒寫(DNW&TFTP)

簡述

案例在JZ2440開發板上完成,本例通過NorFlash中U-boot進行NandFlash裸板程序下載。上篇文章講述的是採用epo燒寫器直接完成程序對NandFlash燒寫。而當板子上的NorFlash有U-boot啓動程序時,可以通過U-boot進行燒寫,但前提需要DNW軟件進行程序USB下載,或者tftpd軟件進行程序網絡下載,下載後由U-boot完成程序燒寫。下面對兩種下載方法進行實驗。


準備條件

  1. SecureCRT串口調試軟件
  2. DNW文件傳輸軟件(USB傳輸,需要安裝好驅動)
  3. tftpd文件傳輸軟件(網絡傳輸)
  4. U-boot啓動程序(百問網改版的uboot程序)
  5. 需要燒錄程序的二進制文件(百問網提供的leds.bin)

點擊進入軟件與程序文件下載地址


U-boot啓動程序燒寫

啓動程序需下載到NorFlash中,此步驟需要epo或者Jlink支持,燒寫方法和上篇文章一樣,只是過程中將參數改爲NorFlash燒錄即可。有了U-boot就可以通過它完成Nand的程序燒寫,這裏不贅述。


DNW方式下載與燒寫

DNW用於USB文件傳輸的一種工具,使用此軟件時需要記得安裝好驅動。

1.準備好已經下載到NorFlash中的U-boot程序。USB線接開發板usb口<—>PC。
2.打開SecureCRT串口調試軟件,撥到NOR啓動開機。鍵入空格進入菜單頁。

3.鍵入”n”(Download u-boot to Nand Flash:將程序下載到Nand Flash),進入Waiting a download.

4.打開DNW軟件,軟件頂端應顯示USB:OK。才表示識別帶usb設備。

5.軟件上選擇:USB port–》Transmit–》選擇要下載的.bin程序文件。

6.完成下載與燒寫。撥到Nand啓動,重上電或復位觀察現象。


TFTP方式下載與燒寫

注:此實驗最好關閉電腦的防火牆,否則可能產生很多未知的錯誤

採用tftp協議進行網絡傳輸,fttp協議爲TCP/IP協議族中的一種,廣泛用於文件傳輸功能。用TFTP下載燒寫前提需要建立一個局域網的環境下,對開發板和主機進行互聯,從而進行文件傳輸。(注:tftp傳輸只起到下載功能,燒寫功能還需要U-boot命令完成燒寫)

步驟如下:
1.準備好已經下載到NorFlash中的U-boot程序。

2.靜態更改PC端有線網卡IP如下(設置成其他也可以,只要保證同一網段):

IP:192.168.2.6(此作爲主機服務器IP)
子網掩碼嗎:255.255.255.0
網關:192.168.2.1
DNS:192.168.2.1

3.網線連接開發板<—->PC。USB串口線連接開發板<—–>PC。

4.打開SecureCRT串口調試軟件,和tftpd網絡傳輸軟件,並設置好tftpd下需要下載.bin程序文件路徑,以及IP設置爲192.168.2.6(如果沒有此IP可以先忽略,因爲U-BOOT指令還沒執行,網卡還沒識別到,若識別到網卡,軟件上的IP會自動改)。

5.開發板撥至Nor啓動,SecureCRT鍵入空格進入菜單頁。

6.SecureCRT鍵入“q”退出菜單,開始進行U-boot指令。

7.更改開發板(客戶端)ip。鍵入命令:print(查看環境變量)

8.查看更改主機服務器IP(serverip),和設備ip(ipaddr),設備網關(gatewayip),設備掩碼(netmask)。鍵入以下命令進行更改:

  • set serverip 192.168.2.6(更改服務器IP)

  • set ipaddr 192.168.2.5(更改設備IP,必須得和服務器ip同一網段)

  • 更改網關和掩碼同樣 用set命令,網關和掩碼與服務器一致

  • 鍵入save(保存更改的配置)

  • 鍵入ping 192.168.2.6看能否和服務器ping通,若ping通返回is alive

9.鍵入命令:tftp 30000000 leds.bin(將程序通過tftp下載到SDRAM的30000000 地址中,30000000 爲SDRAM起始地址)

8.鍵入命令:nand erase bootloader (燒寫前需要擦除bootloader 分區內存)

9.鍵入命令:nand write 30000000 bootloader (將下載的程序燒寫到nandflash的bootloader 分區)

10.完成燒錄。撥至NAND啓動,復位觀察現象。

(注:查看分區情況,可用mtd(或mtdparts)指令)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章