在樹莓派3b上編譯uboot


在樹莓派3b上編譯uboot

toc

1.說明

最近想研究一下樹莓派3b的一些底層驅動的代碼,比較好的就是直接可以看樹莓派3b的實現。因為usb驅動,網卡驅動,以及lcd驅動,都可以在uboot中直接找到。有了這些東西,對於我們直接寫樹莓派3b的驅動程序,提供了極大的幫助,所以現在先在樹莓派3b上編譯運行起來uboot。

后面個人有計划會在rtt上完善以下驅動:

1.網絡驅動(網口)

2.spi的lcd屏(目前spi驅動已經實現,需對接屏和觸摸)

3.spi接口的wifi驅動

3.hdmi的lcd屏(目前驅動已經基本實現)

4.樹莓派在rt-thread多核使用

5.usb驅動

6.音頻驅動

7.攝像頭驅動

以上推進計划會在個人工作之余中進行,如果有想法和我一起推進,可以給我公眾號留言,一起推進樹莓派驅動工作,完善樹莓派rt-thread功能。

2.代碼編譯

2.1 交叉編譯工具鏈下載

交叉編譯工具鏈,主要可以從下面的鏈接地址下載

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 源代碼下載

首先需要下載源代碼,可以通過下面的網頁進行訪問

https://github.com/u-boot/u-boot.git

將其導入的gitee可以加速clone速度。

接着進入u-boot目錄文件夾,依次輸入下面兩條命令

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文件如下

kernel=u-boot.bin
arm_64bit=1
kernel_address=0x00080000
enable_uart=1

將sd卡啟動盤放到樹莓派中,用串口工具連接樹莓派串口引腳

接着就可以進行上電操作。

此時,uboot就可以正常運行了。

4.待完善的功能

實時上,樹莓派的uboot最接近裸機操作,在學習使用樹莓派非常的有用,對於外設開發來說,由於樹莓派有着非常強大的功能,可以玩的功能非常的多。有了lcd驅動之后,我們可以去做嵌入式gui,有了網絡,我們可以玩嵌入式網絡,有了攝像頭,可以進行圖像的開發與采集,有了usb,可以學習usb協議。

總之,樹莓派由於其成本了性能的優勢,讓這個開發板學習嵌入式非常有價值,結合國產物聯網操作系統,一定會讓其發揮出很多效果,可玩性更高。

所以希望有更多的人參與進來,一起推進,目前uboot的一些驅動已經實現,結合rt-thread的驅動框架模型,可以很方便的進行開發擴張,設計出自己的產品。






免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM