来自中国的开源物联网操作系统RT-Thread 3.0.4发布了,同时也提供了下载,此版本相比RT-Thread 3.0.3版本改动不算大,一部分也是bsp的调整。
RT-Thread简介 RT-Thread是一个集实时操作系统(RTOS)内核、中间件组件和开发者社区于一体的技术平台,由熊谱翔先生带领并集合开源社区力量开发而成,具有极小内核、稳定可靠、简单易用、高度可伸缩、组件丰富等特点。经过11年的累积发展,RT-Thread已经拥有一个国内最大的嵌入式开源社区,同时被广泛应用于能源、车载、医疗、消费电子等多个行业,累积装机量达数千万台,成为国人自主开发、国内最成熟稳定和装机量最大的开源RTOS。 RT-Thread拥有良好的软件生态,支持市面上所有主流的编译工具如GCC、Keil、IAR等,工具链完善、友好,支持各类标准接口,如POSIX、CMSIS、C++应用环境、Javascript执行环境等,方便开发者移植各类应用程序。商用支持所有主流MCU架构,如ARM Cortex-M/R/A, MIPS, X86, Xtensa, C-Sky, RISC-V,几乎支持市场上所有主流的MCU和Wi-Fi芯片。
RT-Thread支持 ARM Cortex-M0 ARM Cortex-M3/M4 ARM Cortex-R4 ARM Cortex-A8/A9 ARM920T/ARM926 etc MIPS x86 PowerPC
本次更新改动部分包括: 更完善的龙芯1C BSP:在龙芯1C智龙开发板上,RT-Thread可以不再依赖pmon就运行起来了。目前龙芯1C BSP也相对健全,可以购买一套龙芯1C300开发板支持下我们国家的龙芯处理器。 更完善的i.MX RT1052 BSP驱动支持,基本上(除了camera驱动)整套驱动都齐全了; 针对GNU GCC版本以及libc功能特性的侦测,以最大程度避免GCC不同版本而带来的编译问题; 其他主要是一些周边的改动,github上的master主干也在发布v3.0.4后,开始陆续的把v3.1.0开发分支的更改合并过去;而v3.0.4会做为v3.0.x分支继续进行维护。 1.内核 调整rt_event_send中hook调用位置,可以更好的把事件值反映到 system view中; 修正memheap的rt_realloc问题; 修复应用模块中动态库的vstart_addr问题; 确保signal更为标准化,移除siginfo_t中的si_errno成员; 增加rt_thread_mdelay API,用于任务毫秒级延时; 2.组件 修正fatfs的dfs mkfs接口(RT-Thread v3.0升级过程中合并错误代码引入的); 修复dfs_net poll接口中,如果已存在接收数据,上层不能唤醒、处理的问题; 修正dfs_net中,如果lwip_socket出错返回fd的问题(Bluebear233); 如果在lwIP 2.0以下版本中使用dfs_net/socket接口将返回编译错误; 修正dfs df接口输出显示信息错误的问题; 修正audio device write出错未正确恢复中断的问题; 修正hardware timer驱动框架中单次超时的问题; ENC28J60驱动中,增加初始化时打开link change中断; 修正ringbuffer中强制写入数据可能带来的问题; netstat命令增加UDP信息显示; 修复了USB HS情况下发送1字节数据会造成发送两次的情况; 修改了USB Class Driver的注册机制,可以在package中向协议栈注册Class Driver; USB Device驱动增加了对HighSpeed的支持; 增强time函数在不同编译器间的适配性; menuconfig中增加更多针对DHCPD的配置项; 3.板级支持包 因为错误地使用svc来进行任务切换以及不完善的驱动支持,暂时移除Andes AE210P移植; 在全志ARM9 BSP中增加SD/MMC驱动; 在全志ARM9 BSP中增加SPI及SPI Flash驱动; 增加GD32的gd32303e-eval开发板支持; gd32450z-eval支持GNU GCC模式编译; 重写risc-v构架的hifive1板级支持包; 针对i.MX RT1052,完成国内各家开发板支持:正点原子,野火,seeed studio; 在i.MX RT1052上,增加针对于cache接口的对接; 在i.MX RT1052上,增加I2S驱动,以及WM8960 codec的驱动支持; 在i.MX RT1052上,完善ETH驱动支持(包括对野火开发板的支持); 在i.MX RT1052上,增加Hardware Timer驱动支持; 在i.MX RT1052上,增加GPIO驱动支持; 在i.MX RT1052上,增加RTC驱动支持; 在i.MX RT1052上,完善SD/MMC驱动支持; 在i.MX RT1052上,增加SPI驱动、SPI Flash驱动(对接到SFUD组件)支持; 在i.MX RT1052上,增加USB Device驱动支持; 在LPC408x BSP中增加README文档以及KConfig文件; 在LPC5460x-LPCXpresso BSP中增加README文档; 龙芯1C BSP中加入显示控制器驱动(Sundm75); 龙芯1C BSP中加入CAN驱动(Sundm75); 龙芯1C BSP中GPIO驱动,增加(外部)中断支持(zhuangwei); 龙芯1C BSP中加入SPI自动初始化功能; 龙芯1C BSP中加入I2C驱动(Sundm75); 龙芯1C BSP中加入电阻触摸屏驱动(Sundm75); 龙芯1C BSP中更改为组件自动初始化,用户入口变为main函数(zhuangwei); 龙芯1C BSP中加入Flash自启动支持(zhuangwei); 龙芯1C BSP中增加README文档及KConfig文件,并做更多显式初始化工作(zhuangwei); 新塘NUC472 BSP中,修正init_rx_desc接收描述符初始化的问题(Bluebear233); QEMU-VExpress-A9 BSP中增加AC97 Audio驱动; QEMU-VExpress-A9中增加README说明文件; stm32f4xx-HAL BSP中增加I2C驱动,增加README说明文件; stm32f7-disco BSP中增加cache接口操作,添加README说明文件; stm32f10x-HAL BSP中增加README说明文件; stm32f40x BSP中增加README说明文件以及KConfig配置文件; stm32f20x BSP中增加KConfig配置文件; stm32f411-nucleo BSP中增加README说明文件及增加GNU GCC工具链支持; stm32f429-apollo BSP中增加GPIO驱动以及README说明文件; stm32f429-armfly BSP中增加KConfig配置文件; stm32l476-nucleo BSP中增加README说明文件; 因为V2M-MPS2并不能支持32位机仿真运行,暂时移除这个BSP; X1000 BSP中增加README说明文件及一些需要用到的固件,例如u-boot.bin等; 4.工具 增加GNU GCC工具链版本及libc功能特性自动侦测功能; 增加VSCode编辑器辅助的功能,bsp下支持scons --target=vsc -s将生成适合于VSCode使用的配置文件; 增加IAR版本侦测的功能; 增加ProjectInfo(env)函数,用于获取一次编译的所有文件,所有头文件,所有宏定义,所有头文件搜索路径等;这样也方便针对各种不同的IDE工具提供更贴切的辅助功能。
相关主题 |