配置完成后的进行任务创建,使用静态方式创建任务时需要使将宏 configSUPPORT_STATIC_ALLOCATION设置为 1,即使用静态内存。还需要将函数 vApplicationGetIdleTaskMemory()和 ApplicationGetTimerTaskMemory()进行实现 ...
分类:
其他好文 时间:
2017-07-27 01:06:27
阅读次数:
406
低功耗是 MCU 的一项重要的指标,比如某些可穿戴的设备,其携带的电量有限,如果整个电路消耗的电量特别大的话,就会经常出现电量不足的情况,影响用户体验。 STM32F103 睡眠模式介绍说明:在 FreeRTOS 系统上面实现睡眠方式仅需了解这里讲解的知识基本就够用了,更多睡眠方式的知识请看 STM ...
分类:
其他好文 时间:
2017-07-25 10:11:34
阅读次数:
741
本章节为大家讲解 FreeRTOS 动态内存管理,动态内存管理是 FreeRTOS 非常重要的一项功能,前面章节讲解的任务创建、 信号量、 消息队列、 事件标志组、 互斥信号量、 软件定时器组等需要的 RAM 空间都是通过动态内存管理从 FreeRTOSConfig.h 文件定义的 heap 空间中 ...
分类:
其他好文 时间:
2017-07-23 10:09:16
阅读次数:
997
本章节为大家讲解 FreeRTOS 计数信号量的另一种实现方式 基于任务通知(Task Notifications)的计数信号量,这里我们将这种方式实现的计数信号量称之为任务计数信号量。 任务计数信号量效率更高,需要的 RAM 空间更小。当然,缺点也是有的,它没有之前介绍的计数信号量实现的功能全面。 ...
分类:
其他好文 时间:
2017-07-22 10:51:51
阅读次数:
260
FreeRTOS配置管理: 网上移植教程较多,也可以使用官方提供的各种Demo工程进行移植,不在详细介绍。本文主要介绍FreeRTOS移植成功后进行的配置方式。使其成为自己最匹配最精简,最适用的系统。 FreeRTOSConfig.h几乎包含了所有需要的配置。下文讲述主要的几项配置: 2.1 con ...
分类:
其他好文 时间:
2017-07-22 00:11:23
阅读次数:
320
本章节讲解 FreeRTOS 任务间的同步和资源共享机制,二值信号量。 二值信号量是计数信号量的一种特殊形式,即共享资源为 1 的情况。 FreeRTOS 分别提供了二值信号量和计数信号量,其中二值信号量可以理解成计数信号量的一种特殊形式,即初始化为仅有一个资源可以使用,只不过 FreeRTOS 对 ...
分类:
其他好文 时间:
2017-07-21 10:27:50
阅读次数:
191
本章节开始讲解 FreeRTOS 任务间的同步和资源共享机制,计数信号量。 FreeRTOS 中计数信号量的源码实现是基于消息队列实现的。 信号量的概念及其作用信号量(semaphores)是 20 世纪 60 年代中期 Edgser Dijkstra 发明的。 使用信号量的最初目的是为了给共享资源 ...
分类:
其他好文 时间:
2017-07-20 16:03:00
阅读次数:
156
2.1 概览基于 FreeRTOS 的应用程序由一组独立的任务构成——每个任务都是具有独立权限的小程序。这些独立的任务之间很可能会通过相互通信以提供有用的系统功能。FreeRTOS 中所有的通信与同步机制都是基于队列实现的。 2.2队列的特性数据存储队列可以保存有限个具有确定长度的数据单元。队列可以 ...
分类:
其他好文 时间:
2017-07-19 11:48:59
阅读次数:
244
本章节为大家讲解 FreeRTOS 的一个重要的通信机制 消息队列,初学者要熟练掌握,因为消息队列在实际项目中应用较多。 消息队列的概念及其作用消息队列就是通过 RTOS 内核提供的服务,任务或中断服务子程序可以将一个消息(注意,FreeRTOS消息队列传递的是实际数据,并不是数据地址,RTX,uC ...
分类:
其他好文 时间:
2017-07-18 10:07:42
阅读次数:
914
本章节为大家讲解 FreeRTOS 支持的定时器组,或者叫软件定时器,又或者叫用户定时器均可。软件定时器的功能比较简单,也容易掌握。 被称为定时器组是因为用户可以创建多个定时器,创建的个数是可配置的。 定时器组介绍FreeRTOS 软件定时器组的时基是基于系统时钟节拍实现的,之所以叫软件定时器是因为 ...
分类:
其他好文 时间:
2017-07-17 10:09:57
阅读次数:
232