安下载(俺下载):打造放心的绿色安全下载站! 安下载首页|软件分类|最近更新

所在位置: 首页  >  电脑软件  >  系统工具  >  系统其它 > RT-Thread(物联网操作系统) v4.0.3 官方版
RT-Thread(物联网操作系统)

RT-Thread(物联网操作系统)

 v4.0.3 官方版
  • 软件大小:220 MB
  • 更新日期:2021-01-26 09:40
  • 软件语言:简体中文
  • 软件类别:系统其它
  • 软件授权:免费版
  • 软件官网:
  • 适用平台:WinXP, Win7, Win8, Win10, WinAll
  • 软件厂商:

6
软件评分

本地下载文件大小:220 MB

软件介绍 人气软件 下载地址

为您推荐: 系统工具

  RT-Thread是一款物联网系统,可以帮助用户构建商用的物联网,附加很多编程工具,用户可以到官方获取相关的工具设计适合企业使用的物联网控制系统,提供多种软件包,支持Cloud SDK/FOTA、第三方云接入SDK、RTI/SystemView、mDNS/uPnP、TLS/DTLS、脚本引擎、音频框架、压缩/解压库、数据库、MQTT、http c/s、Airkiss,也提供组件和服务层,包括键值数据库、DFS虚拟文件系统、FinSH控制台、网络框架、Wi-Fi Manager、设备框架,新版添加SAL_INTERNET_CHECK配置项以支持打开或关闭网络状态检查,解决了处理底层网络设备的do_pollfd函数返回错误-1的问题,修复网卡设备调用关闭dhcp时,底层无需调用dhcp_stop函数关闭dhcp的问题,如果你需要这款软件就下载吧!

RT-Thread(物联网操作系统)

软件功能

  1、内核层:RT-Thread 内核,是 RT-Thread 的核心部分,包括了内核系统中对象的实现,例如多线程及其调度、信号量、邮箱、消息队列、内存管理、定时器等;libcpu/BSP(芯片移植相关文件 / 板级支持包)与硬件密切相关,由外设驱动和 CPU 移植构成。

  2、组件与服务层:组件是基于 RT-Thread 内核之上的上层软件,例如虚拟文件系统、FinSH 命令行界面、网络框架、设备框架等。采用模块化设计,做到组件内部高内聚,组件之间低耦合。

  3、RT-Thread 软件包:运行于 RT-Thread 物联网操作系统平台上,面向不同应用领域的通用软件组件,由描述信息、源代码或库文件组成。RT-Thread 提供了开放的软件包平台,这里存放了官方提供或开发者提供的软件包,该平台为开发者提供了众多可重用软件包的选择,这也是 RT-Thread 生态的重要组成部分。软件包生态对于一个操作系统的选择至关重要,因为这些软件包具有很强的可重用性,模块化程度很高,极大的方便应用开发者在最短时间内,打造出自己想要的系统。RT-Thread 已经支持的软件包数量已经达到 60+,如下举例:

  4、物联网相关的软件包:Paho MQTT、WebClient、mongoose、WebTerminal 等等。

  5、脚本语言相关的软件包:目前支持 JerryScript、MicroPython。

  6、多媒体相关的软件包:Openmv、mupdf。

  7、工具类软件包:CmBacktrace、EasyFlash、EasyLogger、SystemView。

  8、系统相关的软件包:RTGUI、Persimmon UI、lwext4、partition、SQLite 等等。

  9、外设库与驱动类软件包:RealTek RTL8710BN SDK。

软件特色

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

  RT-Thread 主要采用 C 语言编写,浅显易懂,方便移植。它把面向对象的设计方法应用到实时系统设计中,使得代码风格优雅、架构清晰、系统模块化并且可裁剪性非常好。针对资源受限的微控制器(MCU)系统,可通过方便易用的工具,裁剪出仅需要 3KB Flash、1.2KB RAM 内存资源的 NANO 版本(NANO 是 RT-Thread 官方于 2017 年 7 月份发布的一个极简版内核);而对于资源丰富的物联网设备,RT-Thread 又能使用在线的软件包管理工具,配合系统配置工具实现直观快速的模块化裁剪,无缝地导入丰富的软件功能包,实现类似 Android 的图形界面及触摸滑动效果、智能语音交互效果等复杂功能。

  相较于 Linux 操作系统,RT-Thread 体积小,成本低,功耗低、启动快速,除此以外 RT-Thread 还具有实时性高、占用资源小等特点,非常适用于各种资源受限(如成本、功耗限制等)的场合。虽然 32 位 MCU 是它的主要运行平台,实际上很多带有 MMU、基于 ARM9、ARM11 甚至 Cortex-A 系列级别 CPU 的应用处理器在特定应用场合也适合使用 RT-Thread。

RT-Thread(物联网操作系统)

使用说明

  DFS 简介

  DFS 是 RT-Thread 提供的虚拟文件系统组件,全称为 Device File System,即设备虚拟文件系统,文件系统的名称使用类似 UNIX 文件、文件夹的风格,目录结构如下图所示:

RT-Thread(物联网操作系统)

  在 RT-Thread DFS 中,文件系统有统一的根目录,使用 / 来表示。而在根目录下的 f1.bin 文件则使用 /f1.bin 来表示,2018 目录下的 f1.bin 目录则使用 /data/2018/f1.bin 来表示。即目录的分割符号是 /,这与 UNIX/Linux 完全相同,与 Windows 则不相同(Windows 操作系统上使用 \ 来作为目录的分割符)。

  DFS 架构

  RT-Thread DFS 组件的主要功能特点有:

  为应用程序提供统一的 POSIX 文件和目录操作接口:read、write、poll/select 等。

  支持多种类型的文件系统,如 FatFS、RomFS、DevFS 等,并提供普通文件、设备文件、网络文件描述符的管理。

  支持多种类型的存储设备,如 SD Card、SPI Flash、Nand Flash 等。

  DFS 的层次架构如下图所示,主要分为 POSIX 接口层、虚拟文件系统层和设备抽象层。

RT-Thread(物联网操作系统)

  初始化 DFS 组件

  DFS 组件的的初始化是由 dfs_init() 函数完成。dfs_init() 函数会初始化 DFS 所需的相关资源,创建一些关键的数据结构, 有了这些数据结构,DFS 便能在系统中找到特定的文件系统,并获得对特定存储设备内文件的操作方法。如果开启了自动初始化(默认开启),该函数将被自动调用。

  注册文件系统

  在 DFS 组件初始化之后,还需要初始化使用的具体类型的文件系统,也就是将具体类型的文件系统注册到 DFS 中。注册文件系统的接口如下所示:

RT-Thread(物联网操作系统)

  该函数不需要用户调用,他会被不同文件系统的初始化函数调用,如 elm-FAT 文件系统的初始化函数elm_init()。开启对应的文件系统后,如果开启了自动初始化(默认开启),文件系统初始化函数也将被自动调用。

  elm_init() 函数会初始化 elm-FAT 文件系统,此函数会调用 dfs_register() 函数将 elm-FAT 文件系统注册到 DFS 中,文件系统注册过程如下图所示:

RT-Thread(物联网操作系统)

  将存储设备注册为块设备

  因为只有块设备才可以挂载到文件系统上,因此需要在存储设备上创建所需的块设备。如果存储设备是 SPI Flash,则可以使用 “串行 Flash 通用驱动库 SFUD” 组件,它提供了各种 SPI Flash 的驱动,并将 SPI Flash 抽象成块设备用于挂载,注册块设备过程如下图所示:

RT-Thread(物联网操作系统)

  格式化文件系统

  注册了块设备之后,还需要在块设备上创建指定类型的文件系统,也就是格式化文件系统。可以使用 dfs_mkfs() 函数对指定的存储设备进行格式化,创建文件系统,格式化文件系统的接口如下所示:

RT-Thread(物联网操作系统)

  文件系统类型(fs_name)可取值及对应的文件系统如下表所示:

RT-Thread(物联网操作系统)

  以 elm-FAT 文件系统格式化块设备为例,格式化过程如下图所示:

RT-Thread(物联网操作系统)

  还可以使用 mkfs 命令格式化文件系统,格式化块设备 sd0 的运行结果如下所示:

RT-Thread(物联网操作系统)

  挂载文件系统

  在 RT-Thread 中,挂载是指将一个存储设备挂接到一个已存在的路径上。我们要访问存储设备中的文件,必须将文件所在的分区挂载到一个已存在的路径上,然后通过这个路径来访问存储设备。挂载文件系统的接口如下所示:

RT-Thread(物联网操作系统)

  如果只有一个存储设备,则可以直接挂载到根目录 / 上。

  卸载文件系统

  当某个文件系统不需要再使用了,那么可以将它卸载掉。卸载文件系统的接口如下所示:

RT-Thread(物联网操作系统)

更新日志

  #RT-Thread v4.0.3更改日志

  自v4.0.2起更改日志

  ## 核心

  *添加__RTTHREAD__全局宏定义

  *添加用户堆选项

  *修复rt_memheap_detach的错误

  *为memheap.c添加rt_memory_info()

  *添加rt_object_get_length / rt_object_get_pointers API

  *修复线程的双重释放

  *修复了有关“ RT_THREAD_CTRL_CLOSE”命令的线程控制错误

  *避免死锁(启用smp时,rt_hw_interrupt_disable和rt_enter_critical)

  *修复了多核rt_schedule_remove_thread时判断pcpu的ready_table的问题

  *修正了yield操作无法及时释放cpu的问题

  *修复了用于软计时器列表超时检查的迭代器失败

  *修复rt_timer_list_next_timeout多任务安全

  *在软件计时器中添加计时器工作状态查询功能

  *修复了系统计时器线程挂起时的软件问题

  *如果超时功能启动/停止/删除此计时器,则可解决计时器/软件计时器处理问题。

  *修复了rt_timer_start被破坏并破坏计时器列表的问题

  *修正未修改单个定时器时仍然挂载链表的问题

  *添加函数rt_tick_get_millisecond()

  *修复了delay_until问题

  *添加mb mq值溢出检查代码

  *修复rt_event_recv函数,如果事件满足而没有阻塞,则分配thread-> event_set / event_info会很好

  *添加ipc类型最大值的定义

  *从代码中删除对rt_system_object_init / rt_system_tick_init的调用。

  *从内核中删除组件配置宏`RT_USING_FINSH`

  *使用object_find来实现thread_find / device_find

  *在当前线程退出之前执行清理操作

  ## 组件

  *在关闭套接字时修复sys_arch_mbox_fetch函数中的断言

  *添加dhcp启动或停止功能以启动或停止dhcp。

  *将rt_data_queue_peak更改为rt_data_queue_peek。

  *将Elmfat更新为R0.14补丁1。

  *添加SAL_INTERNET_CHECK配置项以支持打开或关闭网络状态检查

  *解决了处理底层网络设备的do_pollfd函数返回错误-1的问题

  *修复网卡设备调用关闭dhcp时,底层无需调用dhcp_stop函数关闭dhcp的问题

  *在sal_accept函数中增加了上下判断网卡的功能

  *修改宏定义的拼写错误,打印IMEI号时修改打印错误

  *修复了当Web套接字请求从服务器返回的数据时服务器关闭连接并且此时错误判断套接字状态的问题

  *修复了sal套接字支持多个网卡时sal_getaddrinfo发布不正确的问题

  *更新AT插座

  *支持at设备动态分配套接字

  *更新AT_SW_VERSION并调整at_socket_ops

  *调整AT套接字回调函数的位置

  *修复at_client,避免重复创建相同的客户端,并防止工作异常和内存泄漏。

  *修复了在最后一个rt_device_read()为零之后接收到数据时rx_notice不同步的问题

  * [FinSH] rm命令支持递归删除文件夹

  *为FINSH添加清除命令

  * [posix]实现usleep功能

  *修复了使用新版本的newlib时pthreads编译错误的问题;同时解决了64位以下的pthreads问题;

  * [dlmodule]修复了dlmodule退出时的崩溃

  *为dlmodule添加优先级和stack_size参数解析

  * libc添加了getline / getdelim函数

  *将某些libc文件中包含的头文件从更改为,以缩小包含范围,以防止递归编译

  * [jffs2] rt_event_recv()的错误检查

  *添加rt_data_queue_deinit并修复数据队列的错误

  *更改登录设备驱动程序框架

  * [pin]将rt_pin_get添加到pin框架

  * [PM]更新RT-Thread PM2.0框架

  * [音频]修复编译警告,取消定义var

  * [serial]修复了当串行端口接收缓冲区已满且未打开ULOG_USING_ISR_LOG时导致的崩溃

  * [wlan]添加原始帧发送接口和管理帧过滤器接口

  * [传感器]添加cmd的供应商信息和传感器类型

  * [传感器]支持rt_sensor_control的自定义命令

  * [传感器]支持TOF传感器等级

  * [SFUD]更新'sf bench'命令。

  * [spi]修复了“ response + 1”,导致无法对齐访问STM32 HAL库的SPI存储器的严重错误

  * [RTC]优化RTC警报功能,为SOFT_RTC添加警报功能

  * [hwtimer]获取计时器计数时,请防止由于中断而导致溢出更新

  * [dirver / i2c] i2c驱动程序支持总线锁定,STOP控制

  * [usb]修复了MAC OS枚举失败的设备描述符中的错误

  *修复USB无法正常识别复合设备的错误

  *修复USB主机核心错误

  *限制> 4个USB端口集线器

  *双免费intf

  * dname缓冲区大小太小

  *分离实例后重置子指针

  ## BSP和CPU移植

  *添加vexpress-a9 BSP的许可证信息和代码清理

  *添加HDSC hc32f4a0 BSP支持

  *添加对赛普拉斯PSoC6系列产品的支持

  *修复了Linux / GCC下的lpc55问题

  * [qemu]修复了drv_pl041.c中代码的拼写错误

  * [loongson]在Loongson 2K1000平台上更新SPI驱动程序和UART驱动程序

  * [allwinner_tina]修复了spi驱动程序错误

  * [smartfusion2]支持Microsemi SmartFusion2系列FPGA

  * [imxrt]为imxrt1064-nxp-evk添加以太网配置

  *添加对架构sparc-v8和soc bm3803的支持。

  * [libc] libc添加了getline / getdelim函数(posix.1-2008)

  *添加对C28x MCU硬件FPU的支持

  * [at32]为以太网驱动程序添加链接检测线程

  *修复了rtconfig.py中的gcc汇编选项,用于imxrt1064-nxp-evk

  * [IMXRT]在IMXRT BSP中修复scons --dist

  * [ls2kdev]初始gpio驱动程序,在ls2kdev上没有irq支持

  *优化BSP dist处理流程

  * [nrfx]添加北欧pdk的qspi_flash

  * [nrf5x]添加nrf5x的BSP,它支持UART,SPI,PWM,ADC,i2c驱动程序和rtc设备驱动程序

  * [nrfx]为nrf5x添加片上闪存

  * [RISC-V:K210]为K210添加UART1〜3支持

  * [Nuclei]添加Nuclei RISC-V处理器支持

  *更新mini2440的BSP

  *添加soc计时器cntpct

  * LPC55S69:在LPC55S69上添加NS项目和TFM支持

  *使MicroPython在Raspi3-64 BSP上运行

  *为W60x添加rt_hw_us_delay

  * [imxrt] [驱动程序]添加USB设备驱动程序

  *修复raspi4-32

  *添加:dma驱动程序,bsc驱动程序,dsi液晶/触摸驱动程序,waveshare spi液晶/触摸驱动程序,看门狗驱动程序,hdmi驱动程序,sdio驱动程序,gpio中断

  *修复:eth驱动程序,spi驱动程序,uart驱动程序

  *在BSP框架上添加更多BSP:

  * at32 / at32f403a-start

  * at32 / at32f407-开始

  * bluetrum / ab32vg1-ab-prougen

  * bm3803

  *柏树/ psoc6-pioneerkit_modus

  * essemi / es32f0271

  * essemi / es32f369x

  * essemi / es32f0654

  * lpc55sxx / lpc55s69_nxp_evk_ns

  * ls2kdev

  * nrf5x

  *核/ gd32vf103_rvstar

  *核/ hbird_eval

  * nuvoton / nk-980iot

  * nuvoton / numaker-iot-m487

  * nuvoton / numaker-pfm-m487

  * raspi2

  * raspi3-32

  * raspi3-64

  * raspi4-32

  * raspi4-64

  * smartfusion2

  * thead-smart

  * tm4c123 BSP

  * zynqmp-r5-axu4ev

  *在新的STM32 BSP框架的基础上添加更多STM32 BSP:

  * STM32L431-BearPi

  * stm32f103-蓝色药丸

  * stm32f103-onenet-nbiot

  * stm32f410-st-核

  * stm32f411-atk-nano

  * stm32f413-st-核

  * stm32g070-st-核

  * stm32h747-st-发现

  * stm32l010-st-核

  * stm32l412-st-核

  * stm32l433-st-核

  * stm32l496-st-核

  * stm32mp157a-st-discovery

  * stm32mp157a-st-ev1

  * stm32wb55-st-核

  *新的STM32 BSP框架:

  *为stm32h743添加dcmi,ov2640和SD卡驱动程序

  *通过在低功耗模式下更改run_mode来修复导致系统崩溃的错误

  *修复了使用gcc编译stm G4系列芯片时的问题,但该芯片不起作用

  * drv_flash_f7.c支持单存储区模式

  *添加stm32f103-atk-warshipv3 sram驱动程序

  *更新void HAL_Delay(__ IO uint32_t延迟)

  *添加PWM9_CONFIG默认配置和TIM3_CONFIG默认配置

  * [stm32f103-atk-warshipv3]添加sdcard驱动程序

  *为stm32添加英语自述文件

  *添加dac和can驱动stm32l4和stm32f4

  * openamp驱动程序并为stm32mp157a添加rs485驱动程序

  *优化引脚索引算法

  * [stm32f769-disco]支持以太网设备

  *添加C ++支持

  *修复了STM32硬件定时器的时钟配置问题

  *调整STM32系列BSP某些外设的中断优先级配置

  *修复STM32 F1系列RTC错误

  *支持SPI / ADC / TIME片上外设驱动

  * [stm32h743-atk-apollo]支持stm32h7 uart dma

  *为pcf8574和uart2添加stm32h743-atk-apollo支持

  *支持stm32h743-atk-apollo pcf8574和uart2(485)

  *更新bsp / stm32 / stm32h743-st-nucleo

  *修复了SMT32F0 / L0 / H7的ADC通道配置错误

  *增加对板载AP6181的支持

  *修复UART DMA TX

  *通过cubemx工具为stm32l4添加pm支持

  *添加stm32f407-atk-explorer sram驱动程序

  *修复有关pwm的PWM计时器初始化

  * [stm32f103-atk-warshipv3]添加sdcard驱动程序

  *添加stm32f103-atk-warshipv3 sram驱动程序

  ##工具

  *添加对Eclipse目标的C ++支持

  *在运行--target = eclipse时保留用户的lib配置

  *执行`scons --dist'时添加库

  *更新tools / building.py并添加`tackanalysis`选项

  *使用命令`scons --menuconfig`改进在scons中生成`rtconfig.h`文件的逻辑

  *在Linux上修复makeimg.py错误

  *为stm32 BSP添加Studio IDE dist功能

  #RT-Thread v4.0.2更改日志

  自v4.0.1起更改日志

  ## 核心

  *将组件自动初始化分为组件自动初始化和主要功能;

  *在SMP模式下添加自旋锁API;

  *修复RT_IDLE_HOOK的拼写问题;

  *当队列已满时添加等待消息队列的线程;

  *修复了在某些异常情况下在rt_mq_create中删除mq的问题;

  *在rt_console_set_device函数中删除C ++关键字;

  *从memory_pool结构中删除`suspend_thread_count`成员;

  *修复了rt_mp_free中block = NULL时的问题;

  *修复了系统调度中rt_thread_yeild导致调度任务顺序不正确的问题;

  *修复中断打开太晚而导致信号处理延迟的问题;

  *禁用SMP时,默认情况下不会将`cpu.c`添加到项目中;

  *修复了“ rt_thread_exit”在SMP模式下过早打开中断的问题,因此其他内核可能会删除此任务,从而在后续函数堆栈中引起该问题;

  *修复了`rt_thread_delete`改变线程状态时的关键保护问题;

  ## 组件

  *修复了C ++ /队列中mPool大小的问题;

  *在C ++ / Thread任务的join / wait函数中添加错误状态返回;

  *修复了DFS / ELM FatFS中的编译警告;

  *在DFS / NFS中添加对Linux NFS服务器的支持;

  *修复了DFS / UFFS中的mkfs问题;

  *添加ftruncate,flock,getuid,umask API;

  *修复list_fd命令中带偏移的fd显示问题;

  *添加`dfs_mount_device` API以在已经在mount_table中的设备上装载文件系统;

  *在DFS /重命名功能中重命名C ++关键字;

  *连接dfs / poll,在Kconfig中使用RT_USING_POSIX选择;

  *优化finsh代码的一部分,使其更简单;

  *当不使用RT_USING_DEVICE时,finsh可以使用易于实现且不使用设备框架的rt_hw_console_getchar()函数;

  *将finsh shell的行长增加到256个字符以上;

  * utest可以支持clang编译器和C ++编译器;

  *修复ulog中可能的跨边界问题;

  *修正`ulog / ulog_console_backend_output`中的编译警告;

  *在YModem中增加了对文件发送和接收功能的支持;

  *无需查找表即可计算CRC16,以减少YModem组件中的代码大小;

  *修复了在pthread / destory期间可能会错误释放堆栈的问题;

  *修复了由于pthread_create异常导致的内存泄漏问题;

  * libc的不同编译器下与计时器相关的API移到了libc \ compilers \ common文件夹中;

  *删除`dlib / sys / unistd.h`中的多余定义(这将导致编译警告);

  *在dlib下添加sys / errno.h和sys / signal.h头文件;

  * Freemodbus不再位于内核中,并将其拆分为独立的softwre软件包;

  * AT插座已更新至v1.3.0:

  -在AT Socket中添加了多客户端和多设备功能支持,并改善了AT设备硬件模块重启时的脏数据处理;

  -支持netdev网卡功能,可以通过网卡接口管理和控制AT设备的网络连接;

  *改进AT组件中的AT服务器功能支持,添加AT服务器数据发送和接收接口at_server_send()和at_server_recv();

  *修复了`shutdown()`之后套接字关闭失败时SAL组件中的`closesocket()`问题;

  *改进了SAL组件中与`sal_bind()`网卡绑定相关的功能;

  *为SAL和netdev添加与IPV6相关的选项配置和功能支持;

  *改进ping命令的错误处理和netdev中的日志显示;

  *在lwIP组件中添加主机名配置选项和功能;

  *修复了lwIP中`sys_arch_mbox_fetch()`的断言问题,该问题可能在套接字关闭时发生;

  *在lwip组件中增加了网卡卸载功能并支持dhcpd服务停止功能;

  *修复因关闭FinSH组件而导致的lwIP组件编译失败;

  *修复了在lwIP DHCP服务器中执行DHCPD任务期间套接字无法关闭的问题;

  *添加dhcpd_stop()接口;

  *更改登录设备驱动程序框架:

  *重构音频驱动程序框架;

  *修正CAN中接收长度为0以及返回错误值的问题;

  *添加硬件加密和解密驱动程序框架;

  *修正`rt_i2c_master_send / rt_i2c_master_recv`的标志处理问题;

  *添加输入捕获和脉冲编码驱动程序框架;

  *修正`rt_mmcsd_blk_remove`时分区锁被删除的问题;

  *初始化SDIO设备时,该功能的制造商和产品也可以使用CIS中的信息;

  *改进了传感器框架中的中断模式处理,并解决了注册传感器时内存不释放的问题;

  *在传感器框架的命令行中提供了更多信息;

  *在串行端口框架中添加对Rx缓冲区大小的检查,并在RX缓冲区已满时提供通知;

  *在SPI框架中删除旧的Nor SPI Flash驱动程序,并替换为SFUD组件;

  *修正了SFUD返回值的一些判断问题;

  *修复了SFUD中的“ SFUD_FLASH_DEVICE_TABLE”的定义警告;

  *在SFUD中添加对W25Q64DW设备的支持;

  *修复了创建管道时FiFo创建失败的处理;

  *修复了在rt_rbb_destroy()函数中提前释放RBB的问题;

  *在`rt_rbb_blk_alloc`函数中使用C ++重命名新关键字;

  *将工作队列中的struct rt_delayed_work统一为struct rt_work;

  *添加触摸驱动程序框架;

  *添加USB音频类;

  *修复了USB设备堆栈中的RNDIS插入/输出问题;

  *在USB设备堆栈中添加接口回调函数;

  *改进无线局域网框架,包括命令行功能,AP名称处理,密码长度,对netdev的支持,更好的可配置性等。

  ## BSP和CPU移植

  *在与ARM相关的CPU移植中添加Clang编译器支持;

  *修复了ARM Cortex-M0中的SCB_AIRCR定义问题;

  *添加ARM Cortex-M33移植;

  *为ARM Cortex-A移植中的缓存操作添加了与DMB / DSB相关的操作;

  *在ARM Cortex-A移植中添加FPU支持;

  *重新组织MIPS端口。与XBurst相关的移植已移至X1000 BSP;

  *龙芯1B和1C CPU的端口组合为一个GS232端口;

  *增加对RISC-V Hummingbird处理器移植的支持;

  * risc-v的上下文切换退出操作被强制返回机器模式;

  *修复了TI C28x DSP移植期间开关中断的问题;

  *在TI C28x DSP端口中添加类似_ffs的实现;

  *在GCC工具链中将.data .bss部分统一为8bytes对齐;

  * es32f0334 BSP移至`bsp / essemi / es32f0334`;

  *添加`bsp / essemi / es8p508x'BSP,包括UART和GPIO驱动程序;

  *添加GD32VF103V-EVAL(RISC-V MCU)BSP,包括UART驱动程序;

  *重新排列NXP i.MXRT BSP并添加相关的BSP文档;

  *将i.MXRT1052 ATK指挥官,Fire Pro BSP和i.MXRT1064 EVK BSP添加到新的i.MXRT BSP中;

  *为NXP LPC55S6X系列添加了BSP,并增加了对NXP官方开发板LPC55S69-EVK的支持;

  *修复LPC54114-lite BSP中的I2C操作(master_xfer);

  *在LPC54114-lite BSP中添加音频驱动程序;

  *更新Loongson 1B BSP并默认使用自动组件初始化;

  *为Loongson 1B BSP添加Kconfig配置;

  *添加QEMU / mipssim BSP来仿真RT-Thread / MIPS,而无需MIPS硬件;

  *重构qemu-vexpress-a9的音频驱动程序并解决OS Tick准确性的问题;

  *将LPUART驱动程序添加到RV32M1 VEGA BSP;

  *删除旧的STM32 BSP:stm32f4xx-HAL,stm32f10x,stm32f10x-HAL,stm32f429-apollo,stm32f429-disco,stm32h743-nucleo;

  *修复了在tms320f28379d BSP中打开全局中断的`rt_hw_sci_init()`问题。

  *在WinnerMicro W60x BSP(AES / DES / 3DES / RC / SHA1 / MD3 / CRC)中增加了对软I2C和硬件加密模块的支持;

  *在WinnerMicro W60x BSP中添加oneshot WiFi配置支持;

  *在新的STM32 BSP框架的基础上添加更多STM32 BSP:

  * stm32f072-st-核

  * stm32f103-gizwits-gokitv21

  * stm32f103-yf-ufun

  * stm32f412-st-核

  * stm32f427-robomaster-a

  * stm32f429-st-disco

  * stm32f769-st-disco

  * stm32g431-st-核

  * stm32h743-st-核

  * stm32h750-armfly-h7-tool

  * stm32l4r5-st-核

  * stm32l452-st-核

  *对于新的STM32 BSP框架:

  *将DMAMUX支持添加到stm32l4 +;

  *更新F7 HAL库SConscript;

  *在stm32f103-atk-warshipv3 BSP中的cubemx上打开SWD端口配置;

  *在stm32f427-robomaster-a BSP中添加对SD卡的支持;

  *将USBFS驱动程序添加到stm32f412-nucleo BSP;

  *删除使用uart驱动程序上的设备用户数据;

  *在stm32h743-atk-apollo BSP中添加了QSPI FLASH支持;

  *优化的以太网驱动程序;

  *添加硬件加密和解密驱动程序;

  *添加MIPI LCD驱动程序;

  *添加脉冲编码驱动程序;

  *优化硬件计时器驱动程序;

  *在串行驱动程序中增加对UART 7/8的支持;

  *优化WDT驱动程序;