ARM板在裸机的时候,如果我们跑linux系统,需要把linux系统编译好之后,移植到ARM板上去。
1.首先,我们需要知道我们的板子是什么型号。我手上的板子是三星公司的基于ARM 920t内核的S3C2440开发板,所以,确保我们的开发板能够跑起来,下面的文件时必须的
(1)init.bin (用于初始化的一段小程序)
(2)u-boot-s3c2440.bin(u-boot,用于启动ARM的"C-MOS/BIOS")
(3)uImage-s3c2440.bin(linux内核镜像文件)
(4)ramdisk-s3c2440.bin(文件系统)
2.准备好这些文件之后,我们需要将我们的开发板用J-Link和电脑连好。将开发板的串口也用USB转串连接好。(串口是必须的,不然的话就看不到开发板运行的信息)
3.用如下命令设置J-Link的speed (12000KHz)
speed 12000
下载init.bin 文件
loadbin e:init.bin 0 (loadbin +文件路径+文件名 地址)
设置指针位置
setpc 0
运行init.bin 程序
g
下载U-BOOT
loadbin e:u-boot-s3c2440.bin 33f80000
设置指针地址
setpc 33f80000
到这一步,我们的开发板都没有直观的输出给我们,那是因为我们的U-BOOT 还没有跑起来,但是一旦运行下面一步,我的U-BOOT跑起来之后,串口就会输出信息。
运行U-BOOT
g
此时,我们的u-boot跑起来了。串口能够显示。需要在3S内按下ESC键,否则,u-boot就会进入默认的启动程序(但是现在我们什么都没有烧写,就会死在那里,前功尽弃)
4.这时,我们可以看到串口输出很多信息。可以用pri查看信息。
下面我们需要烧写这些文件到Nand flash中。
首先需要设置服务器的IP(因为我烧写文件的时候,需要用到tftp下载,所以需要设置tftp服务器的IP)
set serverip 192.168.1.78
save (保存设置)
run bbl(烧写u-boot)
run bkl (烧写内核)
run bramdisk(烧写文件系统)
至此,我们的一切任务都完成了,你只需要运行boot 命令,即可启动开发板。