RT-Thread v5.2.2 正式发布:内核稳健性增强,驱动组件全面升级 | 技术集结

RT-Thread v5.2.2内核与驱动深度优化:调度、CAN、串口与生态工具全面解析 实时操作系统(RTOS)是嵌入式设备实现多任务调度与资源管理的核心软件平台,其内核的稳健性与驱动组件的可靠性直接决定了整个系统的性能与长期运行稳定性。从技术原理上看,RTOS通过任务调度器、中断管理和设备驱动模型等机制,为上层应用提供确定的实时响应与硬件抽象。其技术价值在于,一个经过深度优化的RTOS能够显著提升复杂嵌入式系统(如工业控制、物联网终端)的开发效率与运行可靠性。在实际应用场景中,开发者尤其关注内核调度异常、设备驱动数据一致性以及网络协议栈内存管理等底层问题,这些往往是项目后期难以调试的痛点。本 阅读详情

亲爱的开发者们:

亲爱的开发者们,我们很高兴地宣布RT-Thread v5.2.2版本正式发布!本次更新在系统内核、设备驱动、网络协议栈、libcpu支持等多个关键领域进行了重要优化和修复,为嵌入式系统开发提供了更加稳定可靠的基础平台。

Part.01

内核关键优化

  • 修复调度异常:解决rt_schedule中中断抢占导致的调度异常问题

  • 增强对象安全性:修复对象名称长度历史遗留问题和缓冲区溢出漏洞

  • 调度器性能提升:调度器关键切换标志原子操作优化,锁嵌套机制升级

  • 配置默认值调整:RT_NAME_MAX默认值更新为12

Part.02

设备驱动组件全面升级

串行通信

  • serial_v1:修复RX环形缓冲区满时数据丢失逻辑

  • serial_v2:修复DMA模式下RX刷新bug,新增Kconfig缓冲区配置支持

实时时钟

  • RTC:新增基于本地时间的闹钟计算功能

CAN总线

  • 修复底层CAN工作异常时线程挂起问题

  • 实现非阻塞发送机制,增强驱动功能完整性

SPI接口

  • 新增SPI detach功能,完善SPI驱动架构

ADC驱动

  • 修复cppcheck错误,消除编译警告

ktime驱动

  • 移除 rt_ktime_hrtimer_getcnt 接口

Part.03

网络协议栈增强

SAL套接字抽象层

  • 修复内存泄漏问题,优化错误返回机制

网络设备管理

  • 修复IPv6/IPv4双栈支持编译错误

  • 公开netdev_set_dns和netdev_set_if接口

  • 完善网络设备注销返回值处理

AT组件

  • 新增at_client反初始化接口

Part.04

系统组件改进

LWP

  • 修复RISC-V架构信号处理潜在的无限循环问题

  • 恢复TP寄存器,修复用户态内存访问问题

Libc

  • 完善pthread函数注释

  • 修复pthread_cond_timedwait超时唤醒缺失

  • 确保与newlib <3.4.0版本兼容性

Finsh

  • 新增Home、Insert、Delete、End键支持

  • 增强输入模式处理,支持按词删除功能

USB协议栈

  • CherryUSB更新至v1.5.1版本

  • 修复多个相关稳定性问题

Part.05

设备模型(DM)完善

  • NVME:修复队列分配错误检查

  • Thermal:修复C99兼容性问题,完善PWM-FAN移除处理

  • PCI:新增SoC PCI Kconfig支持,优化中断相关问题

  • WDT:支持Intel 6300ESB/Synopsys看门狗等硬件

Part.06

处理器架构支持

AArch64架构

  • 修复MMU和链接器警告

  • 优化内核地址空间初始化

  • 更新Hypercall API

Cortex-M系列

  • M33/M4/M3:修复汇编语法错误,增强HardFault处理

  • 统一异常处理钩子函数参数传递

RISC-V架构

  • 修复RV32E寄存器支持问题

  • 优化原子操作和类型匹配

Part.07

开发工具链增强

  • 新增package.json支持,重构BuildPackage功能

  • 添加VSCode工作区生成支持

  • 集成DTC设备树编译器工具

  • 新增clang-format格式化脚本,优化代码规范检查

Part.08

测试框架完善

  • 新增网络设备、lwIP、文件系统、内存池等测试用例

  • 重组utest菜单结构,统一配置命名规范

  • 集成测试用例到utest框架,增强C++测试支持

Part.09

新增BSP支持

本次版本新增以下硬件平台支持:

  • 玄铁系列:E901

  • 瑞萨系列:ek-ra6e2、ek-ra4e2、ek-ra2a1、ek-ra2e2、ek-ra4m1

  • GD32系列:gd32h759i-eval、gd32470i-eval、gd32e230-lckfb

  • NXP系列:MCX E247、FRDM-MCXE247、FRDM-MCXA346

  • HPMicro系列:hpm6p00evk、hpm5e00evk

  • Phytium系列

  • 树莓派RP2350

Part.10

贡献者列表

特别鸣谢:4444x, ache, ,Bernard Xiong, , BruceOu, Chasel, Chen Wang, ChenRuiwei, cmbjxxiao, Codeman-1999, Core0349, CXSforHPU, CYFS, Damoshed_Xu, dannyray019, eatvector, Elian Dunmore, Erik, Fan YANG, flyingcys, godmial, GuEe-GUI, GUI, Guorui Li, hamburger-os, Haojin Tang, Huang YunKun, hydevcode, HZY0117, hzy0117, Jamie, JamieTx, jianbaoshan, Kinte, Knowbie-dwg, kurisaw, LeenixP, Liang He, lianux-mm, ligr, LittleGreyG, liuyucai, lizhen9880, ljcjames, loremmoqi, maosql, miaolei, MuChenger, PandaFeng, Pillar, qianjiuyuan, Rbb666, rcitach, ricky, Runcheng Lu, RyanCW, sakumisu, Siwei Xu, stranding, Tang Haojin, ThearchyHelios, tomjielii, unnamed2, vandoul, wangqiang, WangShun, wanwandegit, wdfk-prog, westcity-YOLO, Xiaowei Swenson, yans, Yaochenger, Yilin Sun, Yonggang Luo, Youduo Liu, Yucai Liu, Yulong Wang, Yuqiang Wang, Ze-Hou, ZhangJing, zhangshuxun, zhangyan, Zhao Puhan, 下里巴人, 杨熙, 沈洁, 沐攸, 蒙蒙plus,对本次版本更新做出的贡献!

(以上贡献者列表为人工统计,难免会有疏漏。如有疏漏,请私信公众号或留言!)

RT-Thread v5.2.2版本的发布,充分体现了我们在嵌入式实时操作系统领域持续深耕的技术积累。通过内核稳健性增强、设备驱动全面升级、网络协议栈完善等多维度创新,我们致力于为开发者提供更稳定可靠、功能丰富的物联网开发平台。

在此,我们向所有参与贡献的社区开发者表示衷心感谢!正是你们持续的代码提交、问题反馈和测试验证,推动着RT-Thread生态系统的不断完善。

立即体验:

  • v5.2.2版本现已发布,欢迎开发者下载使用:直接访问发布页面获取版本(https://github.com/RT-Thread/rt-thread/releases/tag/v5.2.2)

  • 查看完整更新日志了解详细改进(https://github.com/RT-Thread/rt-thread/blob/master/ChangeLog.md#rt-thread-v522-released)

  • 参与社区讨论,反馈使用体验

我们相信,v5.2.2版本将为您带来更优质的开发体验,助力项目快速落地。期待您在使用过程中继续提出宝贵建议,让我们携手推动RT-Thread生态繁荣发展!

RT-Thread - 让物联网终端开发更简单高效,充分释放芯片潜能,共创嵌入式未来

图片

图片

图片

想要在RT-Thread平台或社区投放内容?

或想参与相关直播活动及赛事?

RT-Thread已开放对接窗口,

请通过邮件与我们取得联系,期待合作!

合作邮箱: tongfangyi@rt-thread.com 

点击“阅读原文”获取最新版本

RT-Thread v5.2.2 升级后,我踩过的那些坑和避坑指南(附串口、CAN、SPI驱动实测) 本文详细记录了从RT-Thread v5.1.3升级到v5.2.2过程中遇到的内核配置、串口驱动、CAN总线、SPI设备等典型问题及解决方案,提供嵌入式系统开发者的实用避坑指南。重点解析了驱动组件优化带来的DMA缓冲区管理、非阻塞发送等新特性,并附实测数据与自动化测试方案。 阅读详情

相关推荐

RT-Thread操作系统0.3.1版本深入剖析与实践指南

本文还有配套的精品资源,点击获取 简介:RT-Thread是一款开源实时嵌入式操作系统,主要针对物联网设备。版本0.3.1提供了丰富的功能和示例,包括LED控制、文件系统、USART通信等,帮助开发者学习和实现各类硬件交互和操作系统内核管理。通过深入学习该版本,开发者能掌握实时系统原理及应用,并为物联网项目打下基础。 1. RT-thread操作系统简介 1...

weixin_42471823的博客 1404

[嵌入式系统-47]:RT-Thread -三种不同版本(Nano版本、标准版版本、Smart版本),展现了RTT三种不同的演化阶段,三种不同的应用场合

因此,随着时间的推移,嵌入式系统开始逐渐采用操作系统,如嵌入式 Linux、FreeRTOS、Micrium OS等,以提供更高级的抽象和功能,同时降低开发和维护的成本。用户程序在执行过程中如果需要操作系统的服务,就会触发从用户态到内核态的切换,以便访问操作系统提供的功能和资源。总的来说,RT-Thread Smart版本操作系统通过用户与内核的隔离和多进程间的隔离,提供了更加安全、稳定和灵活的系统架构,适用于对安全性和可维护性要求较高的应用场景。在早期,嵌入式系统通常是为了执行特定的任务而设计的,这些。

文火冰糖(王文兵)的博客 4530

OpenEuler内核编译及替换

一、内核源码下载 在gitee上下载OpenEuler内核源码 下载地址 选择需要的内核版本源码压缩包进行下载 二、内核编译 1.解压缩 将下载好的源码进行解压 tar xvf openeuler-kernel-4.19.90-2107.1.0.tar.gz 2.清理源代码树 解压后得到一个名为kernel的内核源码文件夹,进入后执行命令 make mrproper 清理过去内核编译产生的config,第一次编译时可不执行此命令 3.生成内核配置文件.config 先将将系统原配置文件拷贝过来,原

m0_56602092的博客 2万+

RT-Thread各版本简介及架构介绍

架构:RT-Thread Nano 是一个极简版的硬实时内核,它是由 C 语言开发,采用面向对象的编程思维,具有良好的代码风格,是一款可裁剪的、抢占式实时多任务的 RTOS。其内存资源占用极小,功能包括任务处理、软件定时器、信号量、邮箱和实时调度等相对完整的实时操作系统特性。适用于家电、消费电子、医疗设备、工控等领域大量使用的 32 位 ARM 入门级 MCU 的场合。架构:支持架构:ARM:Cortex M0/ M3/ M4/ M7 等、RISC-V 及其他。功能:线程管理、线程间同步与通信、时钟管理、中

小超嵌入式笔记 7031

好书分享:Control and Estimation with MATLAB(5th Edition)pdf

基于MATLAB的控制与估计》(第5版)由八章组成,包括控制算法和设计。主要内容包括状态估计和数据平滑、RLS和卡尔曼滤波器状态估计、控制系统设计、自适应控制和PID。书中的概念已经使用MATLAB和Simulink实现。提供了可下载的MATLAB和Simulink文件。适合人群:大学生、研究生、控制类工程研究人员。需要电子版pdf,回复索取。

jixianhu的博客 1510

二相混合式步进电机闭环矢量控制simulink仿真(含仿真文件)

在位置跟踪伺服系统中二相混合式步进电机闭环矢量控制simulink仿真

qq_39023633的博客 2万+

RT-Thread 5.0.0 发布

令人期待的RT-Thread 5.0.0版本今天终于跟大家正式见面啦~!我们一起来看看它都有什么新功能、新特性吧!➢ RT-Thread 代码仓库地址:https://github.com/RT-Thread/rt-thread➢ RT-Thread 5.0.0发布版本:https://github.com/RT-Thread/rt-thread/releases/tag/v5.0.0RT-Thr...

rtthreadiotos的博客 3379

BGE-M3 文本情感分类实战:预训练模型微调,导出ONNX并测试

本文介绍了如何基于BGE-M3开源模型实现一个简单的二分类情感分析任务,展示了NLP中经典的“预训练 + 微调”范式。首先,加载预训练模型和分词器,并构建分类头整合到模型中。接着,进行数据预处理并构建DataLoader。然后,定义优化器、损失函数和训练循环,进行模型微调。微调过程中,可以选择基于[CLS] token的单特征提取或基于池化策略的多特征融合。最后,通过验证与推理评估模型性能,并导出ONNX模型以适应生产环境。BGE-M3在语义表征任务中表现优异,适合作为文本分类、语义搜索等下游任务的基础模型

大鹏的专栏 1403

【正点原子STM32探索者】体验RT-Thread最新5.x版本

本位将介绍如何在**正点原子STM32探索者V3开发板**上运行RT-Thread 5.0.0版本,并体验交互式shell命令行操作。本文介绍的方法,同样适用于体验rt-thread最新开发版本,即github主线(master)分支版本。对于想要体验RT-Thread最新版本,或者想要参与RT-Thread开源贡献的朋友,本文值得你的阅读。

码工许师傅 3294

deap数据集的情绪检测代码环境搭建与实现

deap数据数据集很大

f的博客 4157

SIWAVE仿真PCB操作说明

使用SIWAVE进行PCB仿真提取S参数的操作

sinat_15150363的博客 3062

RT-Thread 解析

RT-Thread 是国内开源的嵌入式实时操作系统,有三种版本:Nano 版(极简内核版)、标准版(内核+组件+软件包)、smart 版(类 linux 版)。笔者初次使用标准版,就被其丝滑的手感打动了,于是就有了这篇文章。整体感受是,RTT 整合了精简的实时内核和类 linux 系统框架,既有 FreeRTOS 的内核精髓又有 linux 的架构支撑。对于熟悉实时系统却不太熟 linux 的同学来说,简直不可多得,原地起飞。国际惯例,先来个流水账,根据心情随便写写哈哈。

浪荡游侠 1033

动画实例化:千人同屏不卡顿的秘密

是一种将大量相同骨骼结构的角色动画批量处理、批量渲染的技术。动画计算与渲染解耦,动画数据在CPU或GPU上批量计算,渲染时通过GPU Instancing一次性绘制大量角色。极大减少DrawCall,提升大规模角色(如MMO、RTS、群体AI等)动画的运行效率。动画Bake:编辑器下将所有动画片段Bake为骨骼矩阵纹理。实例参数管理:每个角色维护自己的动画状态、帧索引等。批量渲染:用DrawMeshInstancedIndirect等API批量渲染,Shader中采样骨骼数据。剔除与LOD。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 418

RT-Thread最新BSP支持清单重磅更新!

RT-Thread v5.2.2 正式发布:内核稳健性增强,驱动组件全面升级 | 技术集结。,能像arduino那样就好了,不用关心寄存器,选好对应芯片的bsp,就能跑起来。或者点击文末“阅读原文”查看BSP支持清单。分享一个在单片机(RTOS)上跑ROS的应用。手把手教你认识 Keil MDK分散加载文件。(提示:可以上下滑动、点击放大查看)(提示:可以上下滑动、点击放大查看)点击“阅读原文”查看BSP支持清单。BSP支持清单让我们来看一下。点击下载BSP支持清单。RISC-V架构系列。

strongerHuang 234

【Python爬虫系列】_005.浏览器开发者工具(详解)

Elements(元素)分析当前页面节点,用来辅助书写BS或者XPath这里面的数据与源代码有区别,不一定准确(避坑)Console(控制台)这个除了查看错误信息、打印调试信息(console.log())、写一些测试脚本以外,还可以当作Javascript API查看用例如我想查看console都有哪些方法和属性,我可以直接在Console中输入"console"并执行后续学js逆向的时候需要用到Sources(源代码)与在网页页面,鼠标右键——查看网页源代码 内容一致。

weixin_50296259的博客 422

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

RTThread-Studio中,使用5.2.0版本默认配置生成工程,进行编译报警告的部分解决方法。

所以针对该警告,不能将__RT_KERNEL_SOURCE__定义在rtsched.h头文件中。这部分有如下定义,只有提前定义了__RT_KERNEL_SOURCE__或__RT_IPC_SOURCE__,源文件在引用rtsched.h文件后才能引用到这些调度文件。使用rtthread-studio创建工程,rtt版本为5.2.2,生成的工程不做任何修改,就大量报警告,比如如下:某个函数没有被提前声明。这样操作,可以解决部分内核调度函数调用,没有函数引用的警告。这是rtsched.h文件在。

fox0815的博客 287

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

RT-Thread V5.2.0版本尝鲜

RT-Thread V5.2.0版本尝鲜

Open Source RTOS Development 982

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

RT-Thread重大升级,性能跃升、多项新功能、体验升级

a. DM 2.0 设备模型支持ATA AHCI、reset controller、 hardware mailbox、PHY(外部)、SCSI 总线、DMA 管理、 IIO (工业I/O)、PCI/PCIe,支持 milkv-duo rt-smart,新增通用 sdhci 驱动,支持 pio&&sdma,新增 PWM cool fan,新增支持 AMP 模式 ,新增支持 AMP 中的 PIC mailbox。实习生团队在导师的带领下,积极参与了版本的日志整理工作,确保了版本的顺利发布。

strongerHuang 1052

1114_RT-Thread标准版本简介解读

RT-Thread标准版本简介解读 Grey 全部学习汇总:GitHub - GreyZhang/g_RT-Thread: learning and hacking RT-Thread. RT-Thread标准版本简介解读 摘录与批注 功能核心就是一个调度器。 采用了C语言开发,这基本是看到的大多数通用RTOS都采用的方式。 面向对象的设计,不知道具体的实现体现在什么地方。设计模式是我本身的技术短板,接下来正好可以学习一下。 精简的nano版本可以仅用3KB的flash和1.2K的ram

小灰笔记 1382

[嵌入式系统-33]:RT-Thread -18- 新手指南:三种不同的版本、三阶段学习路径

RT-Thread,全称是 Real Time-Thread,顾名思义,它是一个嵌入式实时多线程操作系统,基本属性之一是支持多任务,但允许多个任务同时运行并不意味着处理器在同一时刻真的执行了多个任务。事实上,一个处理器核心在某一时刻只能运行一个任务由于每次对一个任务的执行时间很短、任务与任务之间通过任务调度器进行非常快速地切换(调度器根据优先级决定此刻该执行的任务)所以给人造成多个任务在一个时刻同时运行的错觉。

文火冰糖(王文兵)的博客 3441

​​​​手把手教你玩转RT-Thread操作系统专栏--​​​​5.2 串口驱动:从0到1实现UART通信(附HAL库移植教程)​​

本文介绍了RT-Thread设备框架下UART串口驱动的完整实现过程。主要内容包括:使用STM32 HAL库初始化UART硬件参数,定义适配RT-Thread设备模型的串口结构体,实现init/open/read/write/control等标准设备接口操作,并将设备注册到系统。文章详细讲解了HAL库移植关键点、调试验证步骤和常见问题解决方法,重点阐述了如何通过统一设备接口屏蔽硬件差异。最后提出扩展练习,指导读者实现多串口支持和异步接收功能,完整呈现了从底层驱动到上层应用的开发全流程。

xiaoheshang_123的博客 971

Arduino库可以直接在RT-Thread上运行啦!

1 简介RTduino为RT-Thread的Arduino生态兼容层,是RT-Thread社区的下属子社区,旨在兼容Arduino社区生态(如上千种分门别类的Arduino库,以及Arduino社区优秀的开源项目),来丰富RT-Thread社区软件包生态,并降低RT-Thread操作系统以及与RT-Thread适配的芯片的学习门槛。可以让用户通过Arduino的函数和编程方法,轻松地将RT-Thr...

rtthreadiotos的博客 2570

RT-Thread 5.2.2 核心目录调整(调度器拆文件、设备管理迁移、内核库迁移)

RT-Thread 5.2.2对调度器、设备管理和内核库进行了三项核心目录调整,体现了嵌入式系统架构设计的高内聚、低耦合原则。调度器拆分为通用、单核和多核模块,支持多核架构扩展;设备管理迁移至驱动组件目录,实现内核与驱动解耦;内核库回归核心目录,确保系统稳定性。这些调整使RT-Thread从轻量RTOS向全场景操作系统演进,既保持MCU的轻量优势,又能满足高端设备的复杂需求。

427

【先楫HPM6750系列】RT-Thread SPI驱动和WiFi联网

本文将会介绍——如何使用RT-Thread Studio创建基于HPM6750EVKMINI开发板的RT-Thread项目,并逐步添加WiFi联网能力、iperf网络带宽测试命令、以及简单的基于socket的网络业务代码。在RT-Thread Studio环境下,只需要进行一些配置即可完成WiFi联网,整个操作过程非常简单。本篇的最后,将会简单介绍这背后蕴含的原理。...

码工许师傅 2931

[嵌入式系统-71]:RT-Thread-组件:日志管理系统ulog,让运行过程可追溯

同步模式适用于对实时性要求较高且系统资源相对充足的场景,但需要注意避免在关键线程中调用可能阻塞较长时间的日志输出函数。异步模式适用于需要保证系统响应速度和稳定性的场景,尤其是在多线程环境中。但需要注意合理配置和管理后台的日志输出任务,以避免过多的系统资源占用和潜在的性能问题。在 RT-Thread 中,ulog组件通常支持配置为同步模式或异步模式,具体取决于应用程序的需求和系统的资源情况。开发者可以根据实际情况选择适合的模式,并合理配置相关的参数和选项。设置日志格式。

文火冰糖(王文兵)的博客 3389
上一篇: 【11.11狂欢启幕】诚意满满!十二款硬件购买立减,至多减100!| 活动速递
下一篇: RA8P1部署ai模型指南:从训练模型到部署 | 本周六
RT-Thread物联网操作系统
博客等级 码龄6年 2万+粉丝 392原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值