1.rt-thread驅(qū)動(dòng)適配
當(dāng)前bsp采用bouffalo_lab最新LHAL 驅(qū)動(dòng)庫,驅(qū)動(dòng)庫與原bl_mcu_sdk代碼同步,當(dāng)前commitid為:e6e8da79a50aeb4fcb67ac380c3bd8885cd56faf。
LHAL 是博流為統(tǒng)一通用外設(shè)接口而設(shè)計(jì)的驅(qū)動(dòng)庫,代碼精煉并且支持博流所有系列芯片。
在眾多小伙伴的一起支持下,目前已完成基本外設(shè)驅(qū)動(dòng)適配,包括
uart/gpio/i2c/spi/pwm/rtc/adc/wdt/hwtimer/flash,rt-thread驅(qū)動(dòng)也是一套代碼支持以上所有芯片。

2.編譯
2.1. 交叉編譯器下載
不同的芯片需下載對應(yīng)的toolchain,請至對應(yīng)下載鏈接下載芯片的工具鏈:

2.2. 設(shè)置
Windows下請使用使用[env工具][1],使用命令 tar -xvf Xuantie-900-gcc-elf-newlib-mingw-V2.6.1-20220906.tar.gz 解壓交叉編譯器,使用Windows下解壓工具直接解壓可能出現(xiàn)Windows下編譯錯(cuò)誤。
在rtconfig.py中將risc-v工具鏈的本地路徑加入 EXEC_PATH 或通過 RTT_EXEC_PATH 環(huán)境變量指定路徑
Windows:
set RTT_EXEC_PATH=C:UsersxxxxDownloadsXuantie-900-gcc-elf-newlib-x86_64-V2.6.1bin
Linux:
export RTT_EXEC_PATH=/opt/Xuantie-900-gcc-elf-newlib-x86_64-V2.6.1/bin
2.3. 編譯
Windows下推薦使用[env工具][1],在console下進(jìn)入bsp/bouffalo_lab/bl61x目錄中,運(yùn)行:
cd bsp/bouffalo_lab/bl61x
menuconfig
pkgs --update
如果在Linux平臺下,可以先執(zhí)行:
scons --menuconfig
它會(huì)自動(dòng)下載env相關(guān)腳本到~/.env目錄,然后執(zhí)行
source ~/.env/env.sh
cd bsp/bouffalo_lab/bl61x
pkgs --update
更新完軟件包后,執(zhí)行 scons -j10 或 scons -j10 --verbose 來編譯這個(gè)板級支持包?;蛘咄ㄟ^ scons --exec-path="GCC工具鏈路徑" 命令,在指定工具鏈位置的同時(shí)直接編譯。
如果編譯正確無誤,會(huì)產(chǎn)生rtthread.elf、rtthread.bin文件;
編譯完成后自動(dòng)調(diào)用libraries/bl_mcu_sdk/tools/bflb_tools/bflb_fw_post_proc對rtthread.bin進(jìn)行打包處理以用于后續(xù)bouffalo_flash_cube工具燒錄。
腳本會(huì)自動(dòng)采用curl命令行方式下載bflb_fw_post_proc,如自動(dòng)下載失敗,可采用手工方式下載對應(yīng)操作系統(tǒng)文件后保存至libraries/bl_mcu_sdk/tools/bflb_tools/bflb_fw_post_proc

3.下載燒錄
3.1. 燒錄工具下載
當(dāng)前bsp必須使用bouffalo_flash_cube-1.0.4工具進(jìn)行燒錄,使用其他工作無法正常運(yùn)行。
3.2. GUI方式下載
連接好串口并在工具上選擇對應(yīng)的串口號
打開對應(yīng)芯片文件夾下的flash_prog_cfg.ini文件
按住開發(fā)板上的boot按鈕后重新上電,進(jìn)入下載狀態(tài)
點(diǎn)擊”Download”開始下載

3.3. 命令行下載
命令行下載可使用bsp/bouffalo_lab目錄下的bouffalo_flash_cube.sh腳本,輸入./bouffalo_flash_cube.sh bl616 /dev/ttyUSB1,腳本會(huì)自動(dòng)采用curl命令行方式下載bouffalo_flash_cube。
如自動(dòng)下載失敗,可采用手工方式下載對應(yīng)操作系統(tǒng)文件后保存至libraries/bl_mcu_sdk/tools/bflb_tools/bouffalo_flash_cube目錄。
其中:
bl616:芯片名稱
/dev/ttyUSB1:下載串口號,linux下為/dev/ttyUSBx或/dev/ttyACMx,windows下為COMx
4.運(yùn)行
如果編譯 & 燒寫無誤,當(dāng)復(fù)位設(shè)備后,會(huì)在串口上看到RT-Thread的啟動(dòng)logo信息:

5.支持開發(fā)板列表

-
UART接口
+關(guān)注
關(guān)注
0文章
124瀏覽量
16331 -
RT-Thread
+關(guān)注
關(guān)注
32文章
1580瀏覽量
44514 -
RISC-V
+關(guān)注
關(guān)注
48文章
2855瀏覽量
52459 -
gcc編譯器
+關(guān)注
關(guān)注
0文章
78瀏覽量
3953 -
AIoT芯片
+關(guān)注
關(guān)注
0文章
34瀏覽量
4263
發(fā)布評論請先 登錄
RT-Thread生成玄鐵RISC-V BSP的CDK工程開發(fā)指南 | 技術(shù)集結(jié)
risc-v峰會(huì)亮點(diǎn) RT-Thread對RISC-V的支持
火熱報(bào)名中!RT-Thread X RISC-V創(chuàng)新應(yīng)用大賽
RT-Thread Smart 上手指南
RT-Thread文檔_RT-Thread 潘多拉 STM32L475 上手指南
RT-Thread文檔_正點(diǎn)原子 nano STM32F103 上手指南
RT-Thread文檔_野火挑戰(zhàn)者 STM32F429 上手指南
RT-Thread文檔_正點(diǎn)原子探索者 STM32F407 上手指南
RT-Thread文檔_正點(diǎn)原子阿波羅 STM32F429 上手指南
RT-Thread文檔_正點(diǎn)原子 I.MX RT1052號令者上手指南
博流RISC-V系列AIoT芯片RT-Thread上手指南
評論