三、uboot
1、boot loader的介绍
操作系统的启动,首先我们要知道,操作系统在开发板上电之后是存在存储器里面的EMMC/SD卡,而操作系统是跑在内存中的,这时我们需要一个东西,将我们的操作系统搬运到内存中,这个东西就是boot loader,它又叫做系统的引导程序。
2、uboot和bootloader的关系
bootloader仅仅是引导程序的一段核心的代码
uboot就是bootloader的一个发行版
类似与linux和ubuntu的关系一样
https://u-boot.readthedocs.io/en/latest/(自行了解)
3、uboot的重要文件夹
fs:uboot支持的文件系统
include:编译需要的头文件
arch:支持的架构 ----芯片架构相关的代码
board:板级资源 ----开发板资源相关的代码
driver:驱动相关的文件夹
sd_fuse:工具相关的文件夹
4、uboot的编译和烧写
1)编译的步骤:
1:将压缩包放入虚拟机
2:在虚拟机里解压压缩包(路径自定义--建议不要有中文路径)
tar xvf uboot_tiny4412-sdk1506.tar.bz2
3:跳转到解压后的目录
执行清理动作
make clean:
清理编译之后产生的东西,并不会清理配置文件
make distclean:
将所有的东西 包括配置文件都清理,恢复出厂设置
4:做开发板的选型
make Tiny4412_config
5: 编译uboot
make
2)uboot的烧录
1:生成bl2的程序
在sd_fuse文件夹里执行
./mkbl2 u-boot.bin bl2.bin 14336
2:烧录BL2(BL1已经烧录过了)
sudo dd iflag=dsync oflag=dsync if=./bl2.bin of=/dev/sdb seek=17
3:烧录uboot
sudo dd iflag=dsync oflag=dsync if=./u-boot.bin of=/dev/sdb seek=49
4:烧录向量表
sudo dd iflag=dsync oflag=dsync if=./E4412_tzsw.bin of=/dev/sdb seek=705
5、 uboot的命令
- uboot环境变量:
- printenv、print、pri打印全部变量
- set、setenv:新增、修改、删除环境变量
- 新增#set 环境变量名 环境变量值
- 删除#set 环境变量
- 修改#set 环境变量名 新的环境变量
- save 保存环境变量(如果不保存重启后无效)
- reset 重启
- 常用命令:
- version --查看版本
- ?或者help 打印支持所有的命令
- ?XXX命令 --打印XXX命令的使用规则
- ping --测试网络连通性
- loady 使用串口下载代码到内存 loady 0x02023400/go 地址
- md 查看内存数据md.b/w/l 分别代表字节/字/四字节
- bdinfo 查看配置信息
- fatinfo 查看指定设备fat的分区信息
- fatinfo <interface> <dev[:part]>
- interface --mmc(MMC或SD,emmc,usb)
- dev :设备编号
- 设备分区号,可选
- fatinfo <interface> <dev[:part]>
- fatload:(重点)
- 从启动介质里下载内容到内存列
- fatload mmc [存储介质的标号]:[存储介质的分区号] [内存里的地址] [要下载的文件] [要下载文件的大小]
- fatload mmc 0:1 0x02023450 images/FriendlyARM.ini 3072
10.read :从存储介质读取一段代码到内存里
movi read kernel 0 40008000
他的意思就是从0号存储介质(sd卡)读取内核到内存里的 0x40008000位置
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhfkikgg
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13