RT-Thread是一個中國開源嵌入式系統(tǒng)掘殴,目前版本為2.2粟誓,已經(jīng)支持許多微控制器,例如STM32系列病瞳,甚至可以在藍(lán)牙BLE芯片中運(yùn)行悲酷。盡管微控制器中資源緊張,但是部署一個易用的微操作系統(tǒng)對項目開發(fā)和代碼管理是很有益的设易。
準(zhǔn)備工具
- STM32開發(fā)版一個,支持USB下載功能
- Ubuntu系統(tǒng)
- USB轉(zhuǎn)串口線
這里我使用了古老的ALIENTEK STM32 MINI V2.0
開發(fā)板戏溺,芯片型號為STM32F103RBT6
,Ubuntu系統(tǒng)版本為16.04
1.下載交叉編譯工具鏈
- 下載
gcc-arm-none-eabi
交叉編譯工具鏈耕拷,對于16.04系統(tǒng)托享,直接使用apt install gcc-arm-none-eabi
進(jìn)行安裝
2.下載RT-Thread編譯工具
- 該系統(tǒng)使用scons編譯,對于16.04系統(tǒng)闰围,使用
apt install scons
進(jìn)行安裝
3.下載系統(tǒng)源碼
- 下載RT-Thread系統(tǒng),地址為:
https://github.com/RT-Thread
- 解壓目錄
4.修改編譯工程
- 進(jìn)入目錄
bsp/stm32f10x
- 編輯文件
rtconfig.py
- 修改 CROSS_TOOL 為 gcc
5.針對板子進(jìn)行配置
-
stm32f10x.h
中對晶振進(jìn)行配置HSE_VALUE
凭戴,例如800000 -
board.h
中對RAM進(jìn)行配置STM32_SRAM_SIZE
炕矮,例如20 -
led.c
中對 led進(jìn)行配置
6.編譯源碼
- 在
bsp/stm32f10x
目錄下運(yùn)行scons
,輸入rtthread.bin文件
7.燒錄代碼
- 你可以使用Jlink進(jìn)行下載档痪,須在Jlink官網(wǎng)下載Linux執(zhí)行文件邢滑,由于我是debian系統(tǒng),可以直接打開JLink_Linux_V614a_x86_64.deb文件進(jìn)行安裝困后。然后在系統(tǒng)文件下lib/目錄下執(zhí)行
JlinkExe
文件,即可以通過Jlink進(jìn)行下載燒錄程序汽绢。 - 這里我采用了更為方便的串口燒錄侧戴。首先將開發(fā)板的B0接高電平,B1接低電平酗宋,然后使用STM32flash-5.0這個軟件進(jìn)行燒錄。
- 下載地址
https://sourceforge.net/projects/stm32flash/
- 解壓目錄寂曹,在該目錄下運(yùn)行make,得到stm32flash
- 將
rtthread.bin
復(fù)制到該目錄下隆圆,接入USB轉(zhuǎn)串口線,然后輸入sudo ./stm32flash -w rtthread.bin -v -g 0x0 /dev/ttyUSB0
,其中ttyUSB0
是串口設(shè)備
- 下載地址
8.檢查是否成功
- 若能看到LED燈閃爍阶女,則成功