CA168首页 > 自动化信息 > 综合信息 > 信息详情

FreeRTOS 8.1.1 发布,小型嵌入式系统

发布日期:2014-09-19 作者:网络

FreeRTOS 8.1.1 发布,此版本修复了从中断处理器给一个互斥型信号量(优先级继承)的功能。

FreeRTOS 8.1.0 在 26 号发布,此版本最主要的特性是支持非连续堆栈(heap_5.c),需要分配内存(创建任务,队列等等)。

之前版本的改进记录:

Changes between V8.0.1 and V8.1.0 released August 26th 2014

	FreeRTOS scheduler, kernel, demo and test updates:

	+ Improved the priority inheritance algorithms to assist integration with
	  off the shelf middleware that may hold multiple mutexes simultaneously.
	+ Introduce heap_5.c, which is similar to heap_4.c but allows the heap to
	  span multiple non-contiguous memory regions.
	+ Updated all Cortex-A9 ports to help trap a couple of common usage errors -
	  the first being when a task incorrectly attempts to exit its implementing
	  function and the second being when a non interrupt safe API function is
	  calLED from an interrupt.
	+ Update all Cortex-A9 ports to remove obsolete mode switches prior to
	  restoring a task context.
	+ configUSE_PORT_OPTIMISED_TASK_SELECTION now defaults to 1 instead of 0.
	+ Update all Cortex-M3/4F ports to trap a non interrupt safe API function
	  being called from an interrupt handler.
	+ Simplify the alignment checks in heap_4.c.
	+ Update the MSVC Windows simulator demo to use heap_5.c in place of
	  heap_4.c to ensure end users have an example to refer to.
	+ Updated standard demo test code to test the new priority inheritance
	  algorithms.
	+ Updated the standard demo tasks to make use of stdint and the FreeRTOS
	  specific typedefs that were introduced in FreeRTOS V8.0.0.
	+ Introduce the pdMS_TO_TICKS() macro as a more user friendly and intuitive
	  alternative to pdTICKS_PER_MS - both of which can be used to convert a
	  time specified in milliseconds to a time specified in RTOS ticks.
	+ Fix a bug in the Tasking compiler's Cortex-M port that resulted in an
	  incorrect value being written to the basepri register.  This only effects
	  users of the Tasking compiler.
	+ Update the Zynq demo to use version 14.2 of the SDK and add in an lwIP
	  example that demonstrates lwIP being used with both its raw and sockets
	  interfaces.
	+ Updated the CCS Cortex-R4 port to enable it to be built with the latest
	  CCS compiler.

	New ports and demo applications:

	+ Two Renesas RX64M ports (RXv2 core) and demos introduced, one for the GCC
	  compiler and one for the Renesas compiler.  Both demos use e2 studio.
	+ Generic IAR Cortex-A5 port (without any reliance on a GIC) introduced.
	  The new port is demonstrated on an Atmel SAMA5D3 XPlained board.

	FreeRTOS+ component updates:

	+ Update CyaSSL to the latest version.
	+ Updated the FreeRTOS+ components supplied directly by Real Time Engineers
	  Ltd. to make use of stdint and the FreeRTOS specific typedefs that were
	  introduced in FreeRTOS V8.0.0.
	+ Rework and simplify the FreeRTOS+FAT SL RAM disk driver.

	Miscellaneous updates and maintenance:

	+ Update the IAR and DS-5/ARM RZ demos to target the official RZ RSK
	  hardware in place of the previously targeted Renesas internal (not
	  publicly available) hardware.
	+ Various other maintenance tasks.


Changes between V8.0.0 and V8.0.1 released 2nd May 2014

	+ Minor fixes to the event group functionality that was released in V8.0.0.
	  The 'clear bits from ISR' functionality is now implemented using a
	  deferred interrupt callback instead of a function, and the 'wait bits' and
	  'task sync' functions now correctly clear internal control bits before
	  returning a value in every possible path through the respective functions.
	+ Ensure the updating of internal control data is protected by a critical
	  section after a task is deleted or suspended.
	+ Minor fixes to FreeRTOS+FAT SL - namely seeking beyond the end of a file
	  when the offset was not a multiple of the sector size.
	+ Ensure Cortex-A9 system registers are only ever accessed as 32-bit values,
	  even when only the lest significant byte of the register is implemented.

	Other updates:

	+ Updated the XMC4200 IAR project so it links with version 7.x of the IAR
	  tools.
	+ Add RL78L1C demo.
	+ Add pcTimerGetTimerName() API function.
	+ Call _reclaim_reent() when a task is deleted if configUSE_NEWLIB_REENTRANT
	  is defined.

Changes between V7.6.0 and V8.0.0 released 19th Feb 2014

	http://www.freertos.org/upgrading-to-FreeRTOS-V8.html

	FreeRTOS V8.x.x is a drop-in compatible replacement for FreeRTOS V7.x.x,
	although a change to the type used to reference character strings may result
	in application code generating a few (easily clearable) compiler warnings
	after the upgrade, and an updated typedef naming convention means use of the
	old typedef names is now discouraged.
	See http://www.freertos.org/upgrading-to-FreeRTOS-V8.html for full
	information.

	New features and functionality:

	+ Event groups - see http://www.freertos.org/FreeRTOS-Event-Groups.html
	+ Centralised deferred interrupt processing - see
	  http://www.freertos.org/xTimerPendFunctionCallFromISR.html

	Other updates:

	+ Previously, when a task left the Blocked state, a context switch was
	  performed if the priority of the unblocked task was greater than or equal
	  to the priority of the Running task.  Now a context switch is only
	  performed if the priority of the unblocked task is greater than the
	  priority of the Running task.
	+ New low power tickless demonstration project that targets the ST STM32L
	  microcontroller - see
	  http://www.freertos.org/STM32L-discovery-low-power-tickless-RTOS-demo.html
	+ Add xPortGetMinimumEverFreeHeapSize() to heap_4.c.
	+ Small change to the tickless low power implementation on the SAM4L to
	  ensure the alarm value (compare match value) cannot be set to zero when a
	  tickless period is exited due to an interrupt originating from a source
	  other than the RTOS tick.
	+ Update the GCC/Eclipse Win32 simulator demo to make better use of Eclipse
	  resource filters and match the functionality of the MSVC equivalent.
	+ xTaskIsTaskSuspended() is no longer a public function.  Use
	  eTaskGetState() in its place.
	+ Improved trace macros, including tracing of heap usage.
	+ Remove one level of indirection when accepting interrupts on the PIC32MZ.
	+ Add Cortex-A9 GCC port layer.
	+ Add Xilinx Zynq demo application

FreeRTOS是一个迷你操作系统内核的小型嵌入式系统。作为一个轻量级的操作系统,功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能等,可基本满足较小系统的需要。

功能和特点
混合配置选项
提供一个高层次的信任代码的完整性
目的是小,简单易用
以开发C,非常便携代码结构
支持两项任务和共同例程
强大的执行跟踪功能
堆栈溢出检测 
没有软件任务的限制数量
没有软件优先事项的限制数量
没有施加的限制,优先转让,多个任务可以分配相同的优先权
队列,二进制信号量,计数信号灯和递归通信和同步的任务 
Mutexes优先继承权
免费开发工具
免费嵌入式软件的源代码
从一个标准的Windows主机交叉发展

[信息搜索] [] [告诉好友] [打印本文] [关闭窗口] [返回顶部]

上一篇:基于嵌入式系统的煤炭地下气化燃烧区氡探测设备在廊坊市研制成功

下一篇:天业天能水泥公司脱硝装置实现DCS自动化控制操控

免责申明

       本文仅代表作者个人观点,与中自网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容!来源网络如有误有侵权则删。

视觉焦点