調試占據著研發全過程的很大比重,我在調試uboot時,花了好久好久。
以一個具體的例子,我想讓我的uboot從nandflash啟動,因為J-link不能直接將u-boot.bin文件直接燒錄到nandflash中,必須在通過nandflash控制寄存器來對nandflash操作,我的uboot中就有nand erase和nand write等功能。如果我每次將uboot燒錄到nandflash時都去擺弄跳線帽,開關電源,那多麻煩和危險吶。
前提條件如下:
1、tftp服務器,這個可以自己搭建網上有關搭建tftp服務器的方法很多。可以參考一下;
2、有AUTOHOTKEY。
過程如下:
1、
;------------------------------------------------------------
; Green Program mapped by "ALT" key
;------------------------------------------------------------
!j::
Run C:\Program Files\SEGGER\JLinkARM_V410i\JLink.exe
return
按一下Alt + j 就能打開打開J-Link Commander,如下圖
2、
^3::
send h{enter}
send speed 12000{enter}
send loadbin D:\project\bootstrap-s3c2440.bin 0{enter}
send setpc 0{enter}
send g{enter}
sleep 100
send loadbin D:\project\u-boot-fulinux.bin 0x33f80000{enter}
send setpc 0x33f80000{enter}
send g{enter}
return
再按一下Ctrl + 3就能將上面的內容打到J-Link Commander上面如圖:
上面的過程是先將bootstrap-s3c2440.bin這個初始化SDRAM的代碼放到steppingstone這4K的SRAM中,然後將u-boot-fulinux.bin下載到SDRAM的0x33f80000地址處並且設置ARM的PC寄存器,讓ARM跳轉到0x33f80000這個地方運行。需要這樣步是因為我沒需要借助它自身將u-boot-fulinux.bin考到nandflash中去。
u-boot-fulinux.bin可以在這裡下載:
下載在Linux公社的1號FTP服務器裡,下載地址:
FTP地址:ftp://www.linuxidc.com
用戶名:www.linuxidc.com
密碼:www.muu.cc
在 2013年LinuxIDC.com\3月\有關U-Boot調試的一些技巧總結
下載方法見 http://www.linuxidc.net/thread-1187-1-1.html