前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >在树莓派3b上运行uboot

在树莓派3b上运行uboot

作者头像
bigmagic
发布2020-04-14 17:31:28
发布2020-04-14 17:31:28
2.2K00
代码可运行
举报
文章被收录于专栏:嵌入式iot嵌入式iot
运行总次数:0
代码可运行

1.说明

最近想研究一下树莓派3b的一些底层驱动的代码,比较好的就是直接可以看树莓派3b的实现。因为usb驱动,网卡驱动,以及lcd驱动,都可以在uboot中直接找到。有了这些东西,对于我们直接写树莓派3b的驱动程序,提供了极大的帮助,所以现在先在树莓派3b上编译运行起来uboot。

后面个人有计划会在rtt上完善以下驱动:

1.网络驱动(网口)

2.spi的lcd屏(目前spi驱动已经实现,需对接屏和触摸)

3.spi接口的wifi驱动

4.hdmi的lcd屏(目前驱动已经基本实现)

5.树莓派在rt-thread多核使用

6.usb驱动

7.音频驱动

8.摄像头驱动

以上推进计划会在个人工作之余中进行,如果有想法和我一起推进,可以给我公众号留言,一起推进树莓派驱动工作,完善树莓派rt-thread功能。

2.代码编译

2.1 交叉编译工具链下载

交叉编译工具链,主要可以从下面的链接地址下载

代码语言:javascript
代码运行次数:0
运行
复制
https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads

我的是Ubuntu系统,相关的window系统的交叉编译工具链可以类似找到

文件有1.4G左右,我已经放到网盘中提供下载

链接: https://pan.baidu.com/s/1GR-IQlCcqu1APvmu_MLkCg

提取码: fgby

2.2 源代码下载

首先需要下载源代码,可以通过下面的网页进行访问

代码语言:javascript
代码运行次数:0
运行
复制
https://github.com/u-boot/u-boot.git

将其导入的gitee可以加速clone速度。

接着进入u-boot目录文件夹,依次输入下面两条命令

代码语言:javascript
代码运行次数:0
运行
复制
ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- make rpi_3_defconfig
ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- make

此时就可以看到编译出来的文件了

3.固件下载与使用

对于树莓派固件的下载,主要是通过sd卡进行搬运工作,关于树莓派的启动方式,可以看我之前的文章描述,这里不多说。

当制作好树莓派的sd卡启动盘后,需要将u-boot.bin的代码放到sd卡中并且修改config.txt文件如下

代码语言:javascript
代码运行次数:0
运行
复制
kernel=u-boot.bin
arm_64bit=1
kernel_address=0x00080000
enable_uart=1

将sd卡启动盘放到树莓派中,用串口工具连接树莓派串口引脚

接着就可以进行上电操作。

此时,uboot就可以正常运行了。

4.待完善的功能

实时上,树莓派的uboot最接近裸机操作,在学习使用树莓派非常的有用,对于外设开发来说,由于树莓派有着非常强大的功能,可以玩的功能非常的多。有了lcd驱动之后,我们可以去做嵌入式gui,有了网络,我们可以玩嵌入式网络,有了摄像头,可以进行图像的开发与采集,有了usb,可以学习usb协议。

总之,树莓派由于其成本了性能的优势,让这个开发板学习嵌入式非常有价值,结合国产物联网操作系统,一定会让其发挥出很多效果,可玩性更高。

所以希望有更多的人参与进来,一起推进,目前uboot的一些驱动已经实现,结合rt-thread的驱动框架模型,可以很方便的进行开发扩张,设计出自己的产品。希望有兴趣一起推进的,给我公众号后台发消息。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 嵌入式IoT 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2.代码编译
    • 2.1 交叉编译工具链下载
    • 2.2 源代码下载
  • 3.固件下载与使用
  • 4.待完善的功能
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档