www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 公眾號(hào)精選 > 嵌入式IoT

前言


由于電子設(shè)備的普及,越來(lái)越多人擁有樹(shù)莓派,不管是作為電子極客,還是作為普通普通人,很多人都會(huì)玩一下樹(shù)莓派,可以學(xué)習(xí)一些c語(yǔ)言,也可以學(xué)習(xí)嵌入式。下面我來(lái)介紹一下如何在樹(shù)莓派上運(yùn)行rt-thread rtos。

01

準(zhǔn)備條件

本文主要介紹如何快速高效的搭建樹(shù)莓派rt-thread的開(kāi)發(fā)環(huán)境。按照文章的步驟,可以很方便的將rt-thread運(yùn)行起來(lái)。

準(zhǔn)備條件:

1.樹(shù)莓派3b

2.usb轉(zhuǎn)ttl模塊(樹(shù)莓派串口輸出)

3.一臺(tái)裝有Ubuntu16.04的電腦

當(dāng)準(zhǔn)備好這些東西后,就可以開(kāi)啟我們的樹(shù)莓派rt-thread之旅了。


02

源代碼編譯

源代碼倉(cāng)庫(kù)在可以從rt-thread的官網(wǎng)上查看

git clone git@github.com:RT-Thread/rt-thread.git

其中bsp包下已經(jīng)有三個(gè)文件

raspi2:針對(duì)樹(shù)莓派2的bsp,目前功能較少

raspi3-32:樹(shù)莓派3b,基本上比較完善,支持多核

raspi3-64:樹(shù)莓派3b 64位版本

目前我們通過(guò)raspi3-32來(lái)進(jìn)行相關(guān)的演示。


03

開(kāi)發(fā)環(huán)境搭建

Linux下推薦使用gcc工具 gcc-arm-none-eabi-5_4-2016q3,如果還沒(méi)有編譯工具,下載后,解開(kāi)文件。

tar vxf gcc-arm-none-eabi-5_4-2016q3-20160926-linux.tar.bz2

Linux環(huán)境下需要修改編譯器目錄設(shè)置,修改bsp/raspi3-32/rtconfig.py中的

EXEC_PATH = r'/opt/gcc-arm-none-eabi-5_4-2016q3/bin'

為編譯工具的實(shí)際所在目錄,這里注意要加上后綴 /bin

進(jìn)入到rt-thread/bsp/raspi3-32目錄中,運(yùn)行以下命令:

scons

可以看到生成對(duì)應(yīng)的kernel7.img,該文件就是可執(zhí)行文件。

04

樹(shù)莓派SD卡的制作

要想編譯出來(lái)的kernel文件正常的運(yùn)行在樹(shù)莓派上,需要制作SD卡鏡像。

格式化SD卡

首先準(zhǔn)備一張SD卡,然后格式化

這里推薦一個(gè)格式化工具gparted。利用這個(gè)工具將SD卡格式化成未分配的即可。

此時(shí)點(diǎn)擊綠色的對(duì)勾就可以完全將SD卡格式化了。

燒錄樹(shù)莓派官方鏡像

然后從樹(shù)莓派官網(wǎng)上下載樹(shù)莓派的鏡像,解壓后燒錄到sd卡上。

sudo dd if=2019-09-26-raspbian-buster-full.img of=/dev/sda bs=4M

當(dāng)然,官網(wǎng)上下載很慢,所以我將這個(gè)鏡像也傳到了百度網(wǎng)盤(pán)上了。

鏈接: https://pan.baidu.com/s/1IqFiGdZXmLzWgqHTL3B8Vw

提取碼: i6wi

去掉Linux鏡像

打開(kāi)制作好的官方的文件,可以看到有幾個(gè)kernel,這幾個(gè)最好都刪掉。

然后用剛才編譯的kernel7.img復(fù)制到這里。

準(zhǔn)備好串口線

目前版本是使用raspi3的 GPIO 14, GPIO 15來(lái)作路口輸出,連線情況如下圖所示:


串口參數(shù):115200 8N1 ,硬件和軟件流控為關(guān)。

按上面的方法做好SD卡后,插入樹(shù)莓派3B,通電可以在串口上看到如下所示的輸出信息:

05

通過(guò)YMODEM下載RTT

上述步驟中,修改代碼后每次都需要重新上電斷電。并且每次都需要將電腦上的鏡像轉(zhuǎn)移到sd卡上。非常不方便開(kāi)發(fā)調(diào)試,為了解決這些問(wèn)題??梢越柚鷘boot的TFTP和Ymodem將內(nèi)核鏡像轉(zhuǎn)移到樹(shù)莓派的內(nèi)存中。


樹(shù)莓派uboot的制作

編譯樹(shù)莓派的uboot

下載地址https://ftp.denx.de/pub/u-boot/

解壓后可以進(jìn)行相關(guān)的操作:

export CROSS_COMPILE=arm-linux-gnueabihf-

export ARCH=arm

make rpi_2_defconfig

輸入make后編譯uboot。

當(dāng)然,為了如果不想自己編譯,可以用我已經(jīng)制作好的uboot即可。

鏈接: https://pan.baidu.com/s/1U3QjIqQDA1lvp236RpRaWA

提取碼: 938e

uboot啟動(dòng)設(shè)置

將編譯好的u-boot.bin放到sd卡中,然后修改樹(shù)莓派的啟動(dòng)文件

修改config.txt文件

kernel=u-boot.bin

enable_uart=1

通過(guò)ymodem下載程序并啟動(dòng)

然后將sd卡放在樹(shù)莓派上,上電即可看到樹(shù)莓派正常的啟動(dòng)了。


接著輸入loady 0x00008000 115200

然后輸入Ctrl+A 然后 s的組合鍵

選擇剛才生成的kernel7.img文件即可


下載完成后輸入go 0x8000即可看到正常運(yùn)行


06

總結(jié)

通過(guò)以上的步驟,可以完全的將樹(shù)莓派運(yùn)行起來(lái)。并且通過(guò)uboot作為下載工具,完全的省去了每次都要用讀卡器轉(zhuǎn)移鏡像的煩惱,提高工作效率,讓開(kāi)發(fā)變得更加高效簡(jiǎn)潔。

rt-thread的樹(shù)莓派引入了多核和64位體系架構(gòu),可玩性非常的高,而且基本的外設(shè)也已經(jīng)實(shí)現(xiàn),后續(xù)開(kāi)發(fā)更加便捷,對(duì)于學(xué)習(xí)嵌入式與rtos多核操作非常方便。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
關(guān)閉