(RTOS笔记1)CubeMX STM32H7配置FreeRTOS
软硬件版本信息:
STM32Cube Mx 5.30
Keil 5.29.0.0
STM32H750XB
CubeMX配置
1.选择芯片的型号
2.配置时钟(Clock Configuration)
3.配置FreeRTOS的时基定时器(将在RTOS笔记2中介绍),用TIM2作为OS的时基定时器为FreeRTOS提供时钟节拍。
4.开启FreeRTOS.
interfice中可以选V1和V2这里选用V1,这两个存在一定的差异后面更新将会进行介绍。
5.配置FreeRTOS参数(Config parameters)
将USE_TRACE_FACILITY使能,这样可以进行在线调试Dbug,其他的参数保持默认参数就可以。对于TICK_PATE_HZ,这个是设置FreeRTOS系统的时钟频率,也就是一秒钟的节拍数,我设置为1000,则节拍就是1KHz.
6.动态任务创建(Tasks and Queues)
这里已经给出了一个启动任务,这个任务是无法在Cube MX中删除的,可以到生成的工程中删除,(建议直接将这个工程的名字和参数改了直接使用)。
点击Add添加新任务会出现以下界面
我们配置的时候只需要设置任务名,优先级,堆栈大小,入口函数(就是任务执行函数的函数名)。可以根据自己的需要来配置,其他的保持原有参数就行。
7.配置生成工程。
然后点击GENERATE CODE生成工程。
打开工程(Open Project)
工程展示
freertos.c中有我们创建的系统任务
下载到电路板上可以运行并且可以实现在线调试。
总述
使用Cube MX配置FreeRTOS极大的节省了配置新工程时移植操作系统所需的大量时间,同时减小了在配置工程时的出错率,能有效地提高工程的配置效率,当然Cube MX最大的缺点就是不能够很灵活的配置需要的工程。
后续会继续跟进学习FreeRTOS并且更新学习内容。
第一次写博客如果哪有错误望大家多多指教。