RT-Thread 3.0.3 釋出,中國自主物聯網作業系統
RT-Thread 3.0.3 日前已正式釋出,本次 RT-Thread 3.0.3 版本的釋出主要包含兩大塊:一是全版本 IoT OS,一是 RT-Thread nano。
先來說說全版本 IoT OS 的主要更新情況。
RT-Thread 3.0.3 更新情況
就本次全版本的更新來說,主要提高了系統的易用性,並在 3.0.2 的基礎上進行了一些 bug 的修復,下面撿主要的更新點來做個說明,更詳細的說明請移步 GitHub 檢視 ChangeLog 檔案。
核心部分
完善signal支援,增加rt_signal_wait函式(對應到POSIX sigwait介面);
當開啟finsh shell時,rtthread.h標頭檔案中主動包含finsh
修訂rtdbg.h除錯輸出資訊的註釋,在RT-Thread中,只需要按照以下方式即可簡單獲得除錯資訊的輸出:
#define DBG_ENABLE
#define DBG_SECTION_NAME "[ MOD]"
#define DBG_LEVEL DBG_INFO
#define DBG_COLOR
#include <rtdbg.h>
註釋掉DBG_ENABLE巨集,即關閉除錯資訊輸出功能;開啟DBG_ENABLE巨集,即可使用dbg_log(level, fmt, …)介面來輸出除錯資訊;
DBG_SECTION_NAME 給出每行除錯資訊的字首;DBG_LEVEL 定義除錯資訊的輸出等級;DBG_COLOR 定義指明是否攜帶帶顏色輸出的資訊
元件平臺
增加libc_stdio_get_console()介面,用於返回console的檔案描述符(fd)
更改UI engine為獨立的package;
增加SPI上通用的TF/SD卡驅動;
增加軟體方式的RTC裝置(可以NTP網路更新時間,而後依賴系統OS Tick來維持時鐘運轉)
更改open/fcntl/ioctl介面為更POSIX標準化的介面;
移植
增加v2m-mps2 bsp(可以用於Keil MDK5以上,相對完整的M4/M7/M23/M33 - 軟體模擬板卡);
增加stm32f10x-HAL的sdcard驅動;
simulator移植可以在Windows/Visual C++下正常工作;並更新SDL到SDL2.0.7版本;
增加國科微gk7102 bsp;
增加全志F1C100s ARM9 bsp;
工具
更新Python指令碼以適配Python 3以及scons 3.0;
Nano更新情況:
同步nano原始碼到RT-Thread 3.0.3
新增V2M-MPS2 BSP支援
修復MDK 5.14無法複製license問題
更新board.c模板,簡化不必要的配置
msh命令匯出預設新增RT_USED屬性,不需要另外加keep選項
更新stm32_msh和lpc824_msh例子的uart程式碼,不再依賴drivers ipc部分
移除drivers ipc部分原始碼
Nano版本經過本次更新後,解決了不少使用者遇見的MDK 5.14版本無法複製license的問題,並簡化了一些不必要的設定,進一步降低了Nano版本的使用門檻。
而本次增加的V2M-MPS2 BSP支援,配合Fast Models Debugger (需要MDK-ARM Professional授權),即可實現不需要硬體就可以完成Cortex-M0/M0+/M3/M4/M7/M23/M33 的開發和程式碼除錯,特別對於關注M23/M33的小夥伴來說,這是個福音。
最後
官方表示,RT-Thread在保持版本的更新的同時,今年也會投入更多的精力完善相關文件,這其中就包括RT-Thread應用筆記、sample示例、BSP的readme等,如果你也希望參與RT-Thread的貢獻,除了參與程式碼貢獻,文件的貢獻也是一樣非常重要的工作(後續將會有專門的關於文件貢獻的說明),期待你的參與。