mirror of
				https://github.com/goldenfishs/MRobot.git
				synced 2025-10-31 15:15:43 +08:00 
			
		
		
		
	添加freertos.c
This commit is contained in:
		
							parent
							
								
									4d38f55ced
								
							
						
					
					
						commit
						40aa71f077
					
				
							
								
								
									
										131
									
								
								src/freertos.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										131
									
								
								src/freertos.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,131 @@ | |||||||
|  | /* USER CODE BEGIN Header */ | ||||||
|  | /**
 | ||||||
|  |   ****************************************************************************** | ||||||
|  |   * File Name          : freertos.c | ||||||
|  |   * Description        : Code for freertos applications | ||||||
|  |   ****************************************************************************** | ||||||
|  |   * @attention | ||||||
|  |   * | ||||||
|  |   * Copyright (c) 2025 STMicroelectronics. | ||||||
|  |   * All rights reserved. | ||||||
|  |   * | ||||||
|  |   * This software is licensed under terms that can be found in the LICENSE file | ||||||
|  |   * in the root directory of this software component. | ||||||
|  |   * If no LICENSE file comes with this software, it is provided AS-IS. | ||||||
|  |   * | ||||||
|  |   ****************************************************************************** | ||||||
|  |   */ | ||||||
|  | /* USER CODE END Header */ | ||||||
|  | 
 | ||||||
|  | /* Includes ------------------------------------------------------------------*/ | ||||||
|  | #include "FreeRTOS.h" | ||||||
|  | #include "task.h" | ||||||
|  | #include "main.h" | ||||||
|  | #include "cmsis_os.h" | ||||||
|  | 
 | ||||||
|  | /* Private includes ----------------------------------------------------------*/ | ||||||
|  | /* USER CODE BEGIN Includes */ | ||||||
|  | #include "task/user_task.h" | ||||||
|  | /* USER CODE END Includes */ | ||||||
|  | 
 | ||||||
|  | /* Private typedef -----------------------------------------------------------*/ | ||||||
|  | /* USER CODE BEGIN PTD */ | ||||||
|  | 
 | ||||||
|  | /* USER CODE END PTD */ | ||||||
|  | 
 | ||||||
|  | /* Private define ------------------------------------------------------------*/ | ||||||
|  | /* USER CODE BEGIN PD */ | ||||||
|  | 
 | ||||||
|  | /* USER CODE END PD */ | ||||||
|  | 
 | ||||||
|  | /* Private macro -------------------------------------------------------------*/ | ||||||
|  | /* USER CODE BEGIN PM */ | ||||||
|  | 
 | ||||||
|  | /* USER CODE END PM */ | ||||||
|  | 
 | ||||||
|  | /* Private variables ---------------------------------------------------------*/ | ||||||
|  | /* USER CODE BEGIN Variables */ | ||||||
|  | osThreadId_t initTaskHandle; // 定义 Task_Init 的任务句柄
 | ||||||
|  | /* USER CODE END Variables */ | ||||||
|  | /* Definitions for defaultTask */ | ||||||
|  | osThreadId_t defaultTaskHandle; | ||||||
|  | const osThreadAttr_t defaultTask_attributes = { | ||||||
|  |   .name = "defaultTask", | ||||||
|  |   .stack_size = 128 * 4, | ||||||
|  |   .priority = (osPriority_t) osPriorityNormal, | ||||||
|  | }; | ||||||
|  | 
 | ||||||
|  | /* Private function prototypes -----------------------------------------------*/ | ||||||
|  | /* USER CODE BEGIN FunctionPrototypes */ | ||||||
|  | 
 | ||||||
|  | /* USER CODE END FunctionPrototypes */ | ||||||
|  | 
 | ||||||
|  | void StartDefaultTask(void *argument); | ||||||
|  | 
 | ||||||
|  | void MX_FREERTOS_Init(void); /* (MISRA C 2004 rule 8.1) */ | ||||||
|  | 
 | ||||||
|  | /**
 | ||||||
|  |   * @brief  FreeRTOS initialization | ||||||
|  |   * @param  None | ||||||
|  |   * @retval None | ||||||
|  |   */ | ||||||
|  | void MX_FREERTOS_Init(void) { | ||||||
|  |   /* USER CODE BEGIN Init */ | ||||||
|  | 
 | ||||||
|  |   /* USER CODE END Init */ | ||||||
|  | 
 | ||||||
|  |   /* USER CODE BEGIN RTOS_MUTEX */ | ||||||
|  |   /* add mutexes, ... */ | ||||||
|  |   /* USER CODE END RTOS_MUTEX */ | ||||||
|  | 
 | ||||||
|  |   /* USER CODE BEGIN RTOS_SEMAPHORES */ | ||||||
|  |   /* add semaphores, ... */ | ||||||
|  |   /* USER CODE END RTOS_SEMAPHORES */ | ||||||
|  | 
 | ||||||
|  |   /* USER CODE BEGIN RTOS_TIMERS */ | ||||||
|  |   /* start timers, add new ones, ... */ | ||||||
|  |   /* USER CODE END RTOS_TIMERS */ | ||||||
|  | 
 | ||||||
|  |   /* USER CODE BEGIN RTOS_QUEUES */ | ||||||
|  |   /* add queues, ... */ | ||||||
|  |   /* USER CODE END RTOS_QUEUES */ | ||||||
|  | 
 | ||||||
|  |   /* Create the thread(s) */ | ||||||
|  |   /* creation of defaultTask */ | ||||||
|  |   defaultTaskHandle = osThreadNew(StartDefaultTask, NULL, &defaultTask_attributes); | ||||||
|  | 
 | ||||||
|  |   /* USER CODE BEGIN RTOS_THREADS */ | ||||||
|  |   initTaskHandle = osThreadNew(Task_Init, NULL, &attr_init); // 创建初始化任务
 | ||||||
|  |   /* add threads, ... */ | ||||||
|  |   /* USER CODE END RTOS_THREADS */ | ||||||
|  | 
 | ||||||
|  |   /* USER CODE BEGIN RTOS_EVENTS */ | ||||||
|  |   /* add events, ... */ | ||||||
|  |   /* USER CODE END RTOS_EVENTS */ | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* USER CODE BEGIN Header_StartDefaultTask */ | ||||||
|  | /**
 | ||||||
|  |   * @brief  Function implementing the defaultTask thread. | ||||||
|  |   * @param  argument: Not used | ||||||
|  |   * @retval None | ||||||
|  |   */ | ||||||
|  | /* USER CODE END Header_StartDefaultTask */ | ||||||
|  | void StartDefaultTask(void *argument) | ||||||
|  | { | ||||||
|  |   /* USER CODE BEGIN StartDefaultTask */ | ||||||
|  |   /* Infinite loop */ | ||||||
|  |   // for(;;)
 | ||||||
|  |   // {
 | ||||||
|  |   //   osDelay(1);
 | ||||||
|  |   // }
 | ||||||
|  |   osThreadTerminate(osThreadGetId()); // 结束自身
 | ||||||
|  |   /* USER CODE END StartDefaultTask */ | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* Private application code --------------------------------------------------*/ | ||||||
|  | /* USER CODE BEGIN Application */ | ||||||
|  | 
 | ||||||
|  | /* USER CODE END Application */ | ||||||
|  | 
 | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 RB
						RB