对于整个单片机程序,我们称之为application,应用程序。 使用FreeRTOS时,我们可以在application中创建多个任务(task),有些文档把任务也称为线程(thread)。 以日常生活为例,比如这个母亲要同时做两件事: 喂饭:这是一个任务 回信息:这是另一个任务 这可以引入很多概念: 任务状态(State): 当前正在喂饭,它是running状...
10_FreeRTOS的链表代码分析 41:16 11_heap_1源码分析 23:23 12-1_heap_2操作原理 18:24 12-2_heap_2源码分析 18:11 13_heap_4源码分析 42:01 14_heap_5源码分析 17:16 韦东山freeRTOS系列教程:【公开课】RTOS商业产品案例源码讲解 3.3万播放 ...
韦东山freeRTOS系列教程之【第七章】互斥量(mutex) 编程算法面向对象编程 在多任务系统中,任务A正在使用某个资源,还没用完的情况下任务B也来使用的话,就可能导致问题。 韦东山 2021/12/08 1.4K0 FreeRTOS 信号量 其他 FreeRTOS 信号量和互斥锁是基于队列实现的, 队列介绍见 << FreeRTOS 消息队列 >>。 使用信...
本节源码是FreeRTOS_20_event_group_wait_multi_events。 要使用事件组,代码中要有如下操作: /* 1. 工程中添加event_groups.c */ /* 2. 源码中包含头文件 */ #include "event_groups.h" 假设大厨要等手下做完这些事才可以炒菜:洗菜、生火。 本程序创建3个任务: 任务1:洗菜 任务2:生火 任务3:炒菜...
爆富鸭创建的收藏夹mits6.081内容:韦东山freeRTOS系列教程:FreeRTOS的内部机制,如果您对当前收藏夹内容感兴趣点击“收藏”可转入个人收藏夹方便浏览
但是FreeRTOS未实现这点:任务A占有互斥量的情况下,任务B也可释放互斥量。 7.2 互斥量函数 7.2.1 创建 互斥量是一种特殊的二进制信号量。 使用互斥量时,先创建、然后去获得、释放它。使用句柄来表示一个互斥量。 创建互斥量的函数有2种:动态分配内存,静态分配内存,函数原型如下: ...
1.1 FreeRTOS目录结构 以Keil工具下STM32F103芯片为例,它的FreeRTOS的目录如下: 1.1 FreeRTOS目录结构 以Keil工具下STM32F103芯片为例,它的FreeRTOS的目录如下: 主要涉及2个目录: Demo Demo目录下是工程文件,以"芯片和编译器"组合成一个名字 比如:CORTEX_STM32F103_Keil ...
FreeRTOS需要3个头文件目录: FreeRTOS本身的头文件:FreeRTOS/Source/include 移植时用到的头文件:FreeRTOS/Source/portable/[compiler]/[architecture] 含有配置文件FreeRTOSConfig.h的目录 1.4.2 头文件 列表如下: 1.5 内存管理 文件在FreeRTOS/Source/portable/MemMang下,它也是放在portable目录下,表示你可以提供自...
韦东山freeRTOS系列教程之【第一章】FreeRTOS概述与体验,文章目录1.1FreeRTOS目录结构1.1FreeRTOS目录结构1.2核心文件1.3移植时涉及的文件1.4头文件相关1.4.1头文件目录1.4.2头文件1.5内存管理1.6Demo1.7数据类型和
FreeRTOS_09_queue_datasource程序会创建一个队列,然后创建2个发送任务、1个接收任务: 创建的队列,用来发送结构体:数据大小是结构体的大小 发送任务优先级为2,分别往队列中写入自己的结构体,结构体中会标明数据来源 接收任务优先级为1,读队列、根据数据来源打印信息 main函数中创建了队列、创建了发送任务、接收任务...