FreeRTOS 10.3.0正式發佈,源代碼遷到Github


FreeRTOS 10.3.0正式發佈,源代碼遷到Github

FreeRTOS

2020年2月13日FreeRTOS 作者Richrd Barry 通過電子郵件宣佈,MIT license 的開源軟件FreeRTOS V10.3.0正式發佈,新版本包括支持ARM v7-M 和 ARM v8-M內核MPU移植,擴展支持IAR 編譯器和IDE 的RISC-V處理器架構移植, 以及一系統新的API 功能。開始在Github上進行更新,方便與大家互動,之前是一直在SourceForge SVN上。https://github.com/FreeRTOS

另外,FreeRTOS的作者Richard Barry將參加會展期間的演講。uCOS的全家桶免費版將在EW2020結束後正式生效(2020.2.28號),基本都集中在EW2020前後。期盼已久的AppWizard也有望在這期間發佈。不過受冠狀病毒疫情影響,ew2020有可能被取消。FreeRTOS當前正在努力製作第一個LTS(Long Term Support ) 版本,也必將很受期待。

主要更新:

<strong>New and updated kernel ports:

+ Added RISC-V port for the IAR compiler.

+ Update the Windows simulator port to use a synchronous object to prevent a user reported error whereby a task continues to run for a short time after being moved to the Blocked state. Note we were not able to replicate the reported issue and it likely depends on your CPU model.

+ Correct alignment of stack top in RISC-V port when configISR_STACK_SIZE_WORDS is defined to a non zero value, which causes the interrupt stack to be statically allocated.

+ The RISC-V machine timer compare register can now be for any HART, whereas previously it was always assumed FreeRTOS was running on HART 0.

+ Update the sequence used to update the 64-bit machine timer compare register on 32-bit cores to match that suggested in RISC-V documentation.

+ Added tickless low power modes into the ARM, IAR and GCC Cortex-M0 compiler ports.

+ Updated the behaviour of the ARMv7-M MPU (Memory Protection Unit) ports to match that of the ARMv8-M ports whereby privilege escalations can only originate from within the kernel's own memory segment. Added configENFORCE_SYSTEM_CALLS_FROM_KERNEL_ONLY configuration constant.(加強對ARMv7-M和ARMv8-M內核的MPU支持)

+ Update existing MPU ports to correctly disable the MPU before it is updated.

+ Added contributed port and demo application for a T-Head (formally C-SKY) microcontroller.(對阿里平頭哥芯片的支持,哈哈~)

<strong>New API functions:

+ Added the vPortGetHeapStats() API function which returns information on the heap_4 and heap_5 state.

+ Added xTaskCatchUpTicks(), which corrects the tick count value after the application code has held interrupts disabled for an extended period.

+ Added xTaskNotifyValueClear() API function.

+ Added uxTimerGetReloadMode() API function.Other miscellaneous changes:

+ Change type of uxPendedTicks from UBaseType_t to TickType_t to ensure it has the same type as variables with which it is compared to, and therefore also renamed the variable xPendingTicks.

+ Update Keil projects that use the MPU so memory regions come from linker/>

+ Added LPC51U68 Cortex-M0+ demos for GCC (MCUXpresso), Keil and IAR compilers.+ Added CORTEX_MPU_STM32L4_Discovery_Keil_STM32Cube demo.

+ Added LPC54018 MPU demo.

+ Rename xTaskGetIdleRunTimeCounter() to ulTaskGetIdleRunTimeCounter().

有興趣的同學可以下載新版本嘗試體驗了!


分享到:


相關文章: