有关U-Boot调试的一些技巧概括
发布时间:2021-11-21 20:00:10 所属栏目:教程 来源:互联网
导读:调试占据着研发全过程的很大比重,我在调试uboot时,花了好久好久。 以一个具体的例子,我想让我的uboot从nandflash启动,因为J-link不能直接将u-boot.bin文件直接烧录到nandflash中,必须在通过nandflash控制寄存器来对nandflash操作,我的uboot中就有nand
调试占据着研发全过程的很大比重,我在调试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 FilesSEGGERJLinkARM_V410iJLink.exe return 按一下Alt + j 就能打开打开J-Link Commander,如下图 2、 ^3:: send h{enter} send speed 12000{enter} send loadbin D:projectbootstrap-s3c2440.bin 0{enter} send setpc 0{enter} send g{enter} sleep 100 send loadbin D:projectu-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中去。 ![]() (编辑:PHP编程网 - 黄冈站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |