FREE 字面意思 就是免费的意思
RTOS 也就是操作系统
freertos 就是让任务 同时进行 由于时间太快 所以你不会感觉到 之间的变化
下面我们把板子 也就是 stm32f103c8t6 利用cubemx来转移
第一步 我们debug选择 serial wire 这个是串行调试 简称是SWD
时基 我们选择 TIM2
RCC 我们选择石英(cs)
下面我们来配置 时钟
这里我们选择 freertos
后面我们选择 v1版本
最后 就是 文件项目 命名什么的 这里就不过多讲解了
打开项目
在main.c里面
下面我们讲解 为什么 选择 TIM2 因为freertos 占用了 systick(简写)所以我们选择了TIM2
那么我们嵌入式系统 为什么选择了 V1 是因为 V1 满足了大多数的情况
上面这个图片是 定时器 和信号量 的创建 后面会讲解
这张图片 是互斥量
这是 堆的相关量
这是内核
这是任务 和队列
Events: 事件相关的创建
Task and Queues: 任务与队列的创建
Timers and Semaphores: 定时器和信号量的创建
Mutexes: 互斥量的创建
FreeRTOS Heap Usage: 用于查看堆使用情况
config parameters: 内核参数设置,用户根据自己的实际应用来裁剪定制 FreeRTOS 内核
Include parameters: FreeRTOS 部分函数的使能
User Constants: 相关宏的定义,可以自建一些常量在工程中使用
Advanced settings: 高级设置
我们还要创建一个串口 把图片的代码 放在里面
3 下面我们进行 任务的创建
任务 也就是进程 比如 你上课是一个任务 陪男朋友 也是一个任务 在里面都有while(1)的死循环 创建任务就是 在内存里面 开辟出一个空间
这是 rtos提供的
函数名称 函数作用 xTaskCreate()动态方式创建任务 xTaskCreateStatic()静态方式创建任务 vTaskDelete()删除任务
动态方式创建 是系统动态分配任务
静态是我们自己来创建 一般情况是动态创建
上面是理论部分 下面的是 实际操作
我们双击打开
我们在freertos里面 找到 .c里面 在两个 for(,,)等于 while(1)也就是一直循环下去
注意看原理图 这是我的板子原理图 做完以后 两个灯 我们会以不同的频率 闪烁
接下来我会更新任务调度