原创 ARM7调试笔记之烧写bootloader,uclinux.

2007-11-22 15:44 5907 7 7 分类: MCU/ 嵌入式

 


    学了这么久,现在慢慢的开始有点感觉了,对BootLoader和ucLinux有了一些了解。开发板到手也有一个多星期了,就刚开始的时候用超级终端测试了一下板子,都是照着说明上一步步操作的,感觉有点迷迷糊糊。之后就一直没动过,放在抽屉里睡觉。


    今天开始了我的第一个实验,Flash的烧写。.


    由于我的板子出厂的时候是装了bootloader和uclinux的,所以要先擦除。


一、擦除Flash:


    方法一:在Programflash软件里操作,建立JTAG连接,设置芯片型号,地址,点Erase按钮可擦除。


    也可以在下面烧uboot步骤的第5步的设置下,在点Program前选择自动擦除。打勾就可以了。


    方法二:在bootloader命令下,这里是指在板子里已装有boot,重装的情况下。


打开超级终端,进入uboot,输入erase 0x000 0x1fffff 回车,uboot可以自己擦除自己。


二、烧写uboot.


    1、 安装好Programflash软件,jtag调试代理。重启计算机。(刚开始的时候我的JTAG连接不上,重启下就好了。)


    2、 连接JTAG口,开发板到计算机的并口。打开开发板电源,打开Programflash软件。


    3、点击Flash ID看JTAG连接是否正常。


    4、设置CPU和Flash型号,起始地址,根据目标板配制来设置。


    5、点击Program按钮,加入要下载的文件,选择uboot.elf,再点Program开始烧写


    6、烧写完后,打开超级终端就可以看到uboot是否装好。


三、装uclinux


    uclinux要在uboot下装。


    重启板子,进入uboot


    在超级终端下输入如下命令:


    1、在bootloader命令行中输入:loadb 0x0c008000  回车,发送uclinux_rom.bin文件;
    2、在bootloader命令行中输入:erase 0x50000 0x1fffff 回车,擦除程序区域数据;
    3、在bootloader命令行中输入:cp 0x0c008000 0x50000 4b46b 回车直到done
    4、在bootloader命令行中输入:set bootcmd bootm 0x50000  回车
    5、在bootloader命令行中输入:save 回车保存数据;
    6、在bootloader命令行中输入:reset 回车重启   在uboot下倒计时,3秒后无键按下进入uclinux。


    附加:在发送文件的时候可以用串口,也可以用网口,用串口发送时,输入命令 loadb 0x0c008000回车,点击菜单栏发送文件,再找到文件目录,协议为kermit.点发送即可。   网口发送时,要设置电脑的IP与开发板IP一致,我的板子默认IP是196.168.0.10,所以计算机上也要改为一致。 打开tftp软件,选择你要发送的文件所在文件夹。回到超级终端下,输入命令: set bootfile uclinux_rom.bin ,回车,再输入tftp命令,回车,便开始发送。


    实验结束,感觉离ARM又近了一步,知道了uboot下基本的操作命令,程序加载和运行的过程。其实我认为,在刚开始学习一种芯片开发的时候,掌握开发流程是非常关键的,至少你在编程序的时候知道自己需要一个什么文件,这样的话你能够很快的融入进来,容易进入状态。


       


      对了,发现一个问题.用串口发送文件的时候,发送不了,网口发送又可以。后来换了台电脑又可以发送了,这是何解?不知有哪位高手能解答........


     

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
7
关闭 站长推荐上一条 /3 下一条