1. 程式人生 > >燒錄檔案到開發板操作

燒錄檔案到開發板操作

軟體工具準備: 1.Jlink燒錄軟體(Setup_JLinkARM_V410i.exe)

                                      2 .Windows下 tftp軟體安裝(tftp32.exe)

                                    3.遠端登陸軟體(securecrt或Putty)

                                     4. USB轉串列埠驅動安裝(PL-2303)

硬體準備:


開發板儲存系統(我的開發板是fl2440):


開發板燒錄流程圖解:


一、將記憶體初始化程式bootstrap下載至SRAM並執行

1.開啟J-Link Commander,將fl2440開發板撥至nand flash啟動,也就是按下電源
電源開關。

2.以下是常用命令:
speed 12000:設定下載速率為12M。
r:reset,復位命令。
h:halt,停機、也有暫停的功能。
loadbin <filename> <address>:下載filename檔案到地址address上。
setpc:設定PC暫存器的值。

3.具體操作

 J-Link>speed 12000
 J-Link>h
 J-Link>loadbin E:\images\bootstrap-s3c2440.bin 0
 J-Link>setpc 0
 J-Link>g

****************************************************************************************************************************************************
說明:
     (1).speed 12000意在設定開發板頻率,也就是設定開發板的下載速率
     (2).因為選擇從nand flash啟動時;0x00000000是對映到4K的SRAM中的,SRAM不需要初始化、即可直接執行程式。
                bootstrap-s3c2440.bin是郭工寫的一段很簡單的記憶體初始化程式,其實它就是uboot.bin檔案的前4k程式碼;注意大小必須等於或小於4KB。
****************************************************************************************************************************************************

二、下載u-boot程式至SDRAM記憶體

J-Link>h
  J-Link>loadbin E:\images\u-boot-s3c2440.bin 0x33f80000
  J-Link>setpc 0x33f80000
  J-Link>g
**************************************************************************************************************************************************
說明:將這個bin檔案載入到33f80000這個記憶體地址
****************************************************************************************************************************************************

三、使用u-boot燒錄我們的程式至nand flash

1.設定uboot環境變數
 u-boot>nand scrub                                      /*擦出整個nandflash所有分割槽,也就是格式化nandflash*/
 u-boot>set ethaddr 00:11:22:33:44:55  /*設定網絡卡MAC地址 */
 u-boot>set ipaddr 192.168.1.2                  /*設定網絡卡ip地址,也就是開發板的ip地址 */
 u-boot>set serverip 192.168.1.168           /*設定tftp伺服器地址,也就是本機乙太網卡的ip地址 */
 u-boot>save                                             /*儲存uboot環境變數*/


2.燒錄u-boot-s3c2440.bin程式
 u-boot>tftp 30008000 u-boot-s3c2440.bin   /*下載u-boot程式到sdram記憶體中*/
 u-boot>nand erase 0 100000                      /*擦除u-boot存放相應分割槽*/
 u-boot>nand write 30008000 0 60000       /*三個數字對應首地址,偏移量,檔案大小,該命令是將u-boot從記憶體中寫到nandflash的相                                                                       應分割槽*/


3.燒錄linux核心
 u-boot>tftp 30008000 linuxrom-s3c2440.bin     /*下載linux核心檔案到sdram記憶體中*/

 u-boot>nand erase 100000  800000                 /*擦除linux核心及相應的分割槽,100000是分割槽起始地址,800000是分割槽的大小,擦                                                                                  除是整個分割槽的擦, 不能擦除一個分割槽的一部分,否則會出錯*/

 u-boot>nand write 30008000 100000 800000  /*將linux核心從記憶體中寫到nandflash相應分割槽*/