1:初始STM32H533的freertos操作平台 本文章简单介绍一下,在STM32H5平台上面,建立Freertos操作平台。 打开串口输出项目中的ico文件,添加freertos的驱动函数,如下图所示,首次打开的时候,由于电脑上面没有安装支持包,我们要在官网上面下载支持包,安装过程如下: 安装过程中,需要下载好支持包后, 我们只需要选择下图中的文件即可 点击生成代码: 打开生成的代码,在freertos中添加两个任务: 配置步骤如下: 定义LED闪烁和串口输出的函数指针 osThreadId_t LEDTaskHandle; osThreadId_t usartTaskHandle; 初始化结构体 const osThreadAttr_t LEDTask_attributes = { .name = "LEDTask", .priority = (osPriority_t) osPriorityNormal, .stack_size = 128 * 4 }; const osThreadAttr_t usartTask_attributes = { .name = "usartTask", .priority = (osPriority_t) osPriorityNormal, .stack_size = 128 * 4 }; 编写两个具体的函数 void STARTLEDTask(void *argument) { / USER CODE BEGIN defaultTask / / Infinite loop / for(;;) { HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_5); HAL_UART_Transmit(&huart2,LED_str,sizeof(LED_str),10); osDelay(500); } / USER CODE END defaultTask / / USER CODE END defaultTask / } void STARTusartTask(void *argument) { /* USER C ODE BEGIN defaultTask / / Infinite loop */ for(;;) { HAL_UART_Transmit(&huart2,freertos_str,sizeof(freertos_str),10); osDelay(1000); } / USER CODE END defaultTask / / USER CODE END defaultTask / } 实验效果: 为了方便看到试验效果,这里我定义两个输出函数数组,用来显示实时的单片机工作状态。 视频连接如下: https://www.bilibili.com/video/BV1BTadetE3g/?vd_source=fb5a6d1a3332aab1989e0f3e24f2afc1 |
【STM32H7S78-DK评测】-5 LVGL&DMA2D DEMO测试
【STM32H7S78-DK评测】CoreMark移植和优化--兼记printf重定向实现方法及常见问题
实战经验 | 从CubeMX下载生成STM32元件封装库
【STEVAL-STWINKT1B测评】1、点亮LED
【STM32H7S78-DK评测】移植AI框架TensorFlow Lite【上篇】
【STM32H7S78-DK评测】移植边缘AI推理框架——TFLM(TensorFlow Lite for Microcontrollers)上篇
【STM32H7S78-DK评测】步进电机控制介绍一与tensorflow安装与测试
使用 STM32CubeMX 生成配置代码的文件结构
NUCLEO-H563ZI刷入Micropython固件并点亮LED灯
【STM32H7S78-DK评测】XIP模板问题处理与电机控制