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中,只需要按照以下方式即可简单获得调试信息的输出:
注释掉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的贡献,除了参与代码贡献,文档的贡献也是一样非常重要的工作(后续将会有专门的关于文档贡献的说明),期待你的参与。