在uboot中运行imx6ull裸机程序

在学习嵌入式Linux之前,还是有必要了解一下嵌入式处理器的裸机程序。但一些教程中提供的裸机程序烧写方法都相对比较复杂,有些需要使用sd卡烧写,烧钱前还要格式化SD卡,然后再给裸机程序加入头部信息,用专用的下载上位机烧写。其实裸机程序在我们学习嵌入式的过程中只是一个引导作用,用来了解这些处理器是如何工作的,因此编写好裸机程序后其实没必要真正地烧写到系统里面,只需要等让它运行,观察实验现象即可。

uboot中一般都会提供多种文件传输的方法,如tftp,nfs,xmodem,ymodem等方法,选择一种板子上uboot支持的方式,如不清楚,可以使用pri命令查看,并选择对应的命令查看帮助信息,如tftp help等(不同的uboot命令会有所不同)。把编译好的裸机bin文件下载到对应的地址上,注意这个地址需要和裸机程序在链接时指定的地址一样(在.lds文件中描述,或者在执行链接的时候指定),如指定到0x80000000。那么就下载到0x80000000这个地址,完成后让uboot直接跳转到这个地址即可运行裸机程序:go 80000000.

需要注意,在板子复位或者重上电等情况,会运行默认的程序,而不是裸机程序,所以说这种方式并不是烧写,只是拷贝到内存中执行,当中省略了很多烧写裸机必要的步骤。

个人学习经验,仅供参考。

你可能感兴趣的:(嵌入式linux学习分享)