1. 程式人生 > >RT-Thread 3.0.3 釋出,中國自主物聯網作業系統

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的貢獻,除了參與程式碼貢獻,文件的貢獻也是一樣非常重要的工作(後續將會有專門的關於文件貢獻的說明),期待你的參與。