使用STM32CubeMX创建FreeRTOS项目

2022-12-03 09:46:01 浏览数 (1)

介绍

STM32CubeMX

STM32CubeMX是被广泛使用的。它集成了芯片选型、引脚分配和功能配置,中间件配置,时钟配置,初始代码和项目的功能。

FreeRTOS

FreeRTOS 是与世界领先的芯片公司合作开发了 15 年,现在每 170 秒下载一次,是面向微控制器和小型微处理器的市场领先的实时操作系统 (RTOS)。根据 MIT 开源许可免费分发,FreeRTOS 包含一个内核和一组持续增加的库,可广泛应用于各个行业领域。FreeRTOS 的构建重点是可靠性和易用性。

使用流程

  1. 新建一个ioc文件工程选取到对应的芯片(这里选用STM32C8T6)
  2. RCC快速选取外部时钟
  1. 选择Debug(不选不能烧录和调试)
  1. 选择时钟源 若要使用RTOS的话,sys这里就不可以选取SysTick,要更换成其他定时器,这里我选用了TIM1
  1. 在GPIO中选择自己使用的引脚
  1. 选择串口,设置里面的参数
  1. 选择FreeRTOS 里面的参数选择自己用的,注意FreeRTOSConfig.h里面的信息都可以在这里配置。
  1. 添加任务
  1. 设置系统时钟
  1. 保存、生成工程
  1. 修改工程代码
代码语言:javascript复制
void LED1ToggleTesk(void const * argument)
{
  /* USER CODE BEGIN LED1ToggleTesk */
  /* Infinite loop */
  for(;;)
  {

		HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_5);
		vTaskDelay(1000);
  }
  /* USER CODE END LED1ToggleTesk */
}
  1. 实验现象 我们的LED灯会闪烁,亮一秒,灭一秒。

0 人点赞