|
RT-Thread开源实时操作系统0.3.1正式版
[复制链接]
发布说明 ======== 是发布0.3.1正式版的时候了:在0.3.1的维护过程中,得到了大家很多的反馈,其中一些bug及修正也是由大家指出,这里感谢大家一直以来的支持,RT-Thread的发展进步离不开大家的帮助,谢谢! 相较RT-Thread 0.3.0版本,0.3.1版本是一个bug修正版,并无添加新的特性(*),使用上与0.3.0版本完全兼容。建议使用RT-Thread 0.3.0版本的用户,如果需要长时间不间断运行(大于1年),请切换到0.3.1正式版本来。
这个版本支持的硬件平台数量与0.3.0正式版本的一致: * ARM Cortex-M3系列:STM32,LM3S以及LPC1766,STM32中新添加STM32F100系列芯片支持。 * ARM7TDMI系列:LPC2148,LPC2478,AT91SAM7X256,AT91SAM7S * ARM920T系列:S3C2440(mini2440) * IA32:QEMU及真实的x86机器
修正的问题包括: * 修正OS Tick溢出的问题。 * 修正定时器有时会被延期操作的问题。 * 修正heap分配器尾部数据浪费的问题。 * 修正rt_realloc时内存可能被浪费使用的问题。 * 调整各内核对象结构使得内存布局更合理。
* 修正ELM FatFs接口中rename的问题。 * 修正LwIP中IGMP的问题。 * 完善当发送mail失败时LwIP的处理。 * 增强、完善RT-Thread/GUI的功能。
RT-Thread在Google SVN服务器上的开发分支亦做了相应调整: 原来的branches/rtt_0_3_1分支更改为branches/rtt_0_3_2。
代码:见附件。
文档: RT-Thread实时操作系统编程指南与0.3.0正式版的相同,以后会逐渐由API说明文档替代,朝着正规化的方向发展。
STM32分支 请注意STM32分支的工程文件组织方式和0.3.0版本中的不一样,原来的几个目录是不相独立的工程,而0.3.1中为了避免混淆,把它们变成了独立的工程(注:因为0.3.1与0.3.0是完全兼容的,所以不一定要更新BSP目录)。
project_107是针对STM32F107芯片的工程,project_valueline是针对STM32F100芯片 STM32 Discovery开发版的工程,其余的芯片默认是STM32F103ZE。如果要修改成自己所需要的芯片,请遵循一下步骤: * 在board.h文件中修改STM32_SRAM_SIZE宏定义,它的单位是KB,所以针对于STM32F103VB类型的芯片,只需要把它定义成20即可。 * 在使用Keil MDK打开board.h文件时,也能够使用Keil MDK带的界面配置方式进行配置。 * 在工程选项的C编译器预定义上,修改成和芯片匹配的类型,例如STM32F10X_HD、STM32F10X_MD等。
另外,STM32分支支持IAR编译器,在使用IAR ARM时,如果你使用了finsh,请注意,最好在链接配置文件中加入 keep { section FSymTab }; keep { section VSymTab }; 它的作用是为了保留finsh中使用到的符号表,因为这些符号表仅在命令行被调用,所以他们可能在最后生成目标文件时被优化掉。
具体请看stm32f10x_flash.icf文件。
LM3S分支 LM3S分支默认采用LM3S8962芯片,针对的是TI这次发的48¥ 8962开发板。
LPC176x分支 工程默认包括finsh shell,文件系统,网络协议栈的支持。
(*) 希望使用新特性的开发人员请关注后续0.4.0版本的发布情况,0.4.0版本添加了很多的新特性,例如:16位的瑞萨M16分支,大端模式的AVR32分支,以及MIPS分支等。
|
|