分配任务优先级

This commit is contained in:
王绪洁 2025-02-10 16:07:26 +08:00
parent d19cec0889
commit 30321201a8
5 changed files with 49 additions and 45 deletions

View File

@ -37,6 +37,7 @@
"api.h": "c", "api.h": "c",
"freertos.h": "c", "freertos.h": "c",
"tcp.h": "c", "tcp.h": "c",
"cmsis_os.h": "c" "cmsis_os.h": "c",
"freertosconfig.h": "c"
} }
} }

View File

@ -119,11 +119,11 @@ void MX_FREERTOS_Init(void)
led_taskHandle = osThreadCreate(osThread(led_task), NULL); led_taskHandle = osThreadCreate(osThread(led_task), NULL);
/* definition and creation of dac_task */ /* definition and creation of dac_task */
osThreadDef(dac_task, start_dac_task, osPriorityLow, 0, 512); osThreadDef(dac_task, start_dac_task, osPriorityNormal, 0, 512);
dac_taskHandle = osThreadCreate(osThread(dac_task), NULL); dac_taskHandle = osThreadCreate(osThread(dac_task), NULL);
/* definition and creation of adc_task */ /* definition and creation of adc_task */
osThreadDef(adc_task, start_adc_task, osPriorityLow, 0, 128); osThreadDef(adc_task, start_adc_task, osPriorityBelowNormal, 0, 128);
adc_taskHandle = osThreadCreate(osThread(adc_task), NULL); adc_taskHandle = osThreadCreate(osThread(adc_task), NULL);
/* USER CODE BEGIN RTOS_THREADS */ /* USER CODE BEGIN RTOS_THREADS */
@ -147,6 +147,7 @@ void start_tcp_task(void const *argument)
/* Infinite loop */ /* Infinite loop */
for (;;) for (;;)
{ {
osThreadTerminate(NULL);
osDelay(1); osDelay(1);
} }
/* USER CODE END start_tcp_task */ /* USER CODE END start_tcp_task */
@ -166,7 +167,7 @@ void start_led_toggle_task(void const *argument)
for (;;) for (;;)
{ {
HAL_GPIO_TogglePin(LED2_G_GPIO_Port, LED2_G_Pin); HAL_GPIO_TogglePin(LED2_G_GPIO_Port, LED2_G_Pin);
osDelay(1000); vTaskDelay(1000);
} }
/* USER CODE END start_led_toggle_task */ /* USER CODE END start_led_toggle_task */
} }
@ -187,7 +188,7 @@ void start_dac_task(void const *argument)
{ {
dac161s997_output(DAC161S997_1, 12.0f); dac161s997_output(DAC161S997_1, 12.0f);
dac161s997_output(DAC161S997_2, 12.0f); dac161s997_output(DAC161S997_2, 12.0f);
osDelay(300); vTaskDelay(300);
} }
/* USER CODE END start_dac_task */ /* USER CODE END start_dac_task */
} }
@ -207,7 +208,7 @@ void start_adc_task(void const *argument)
for (;;) for (;;)
{ {
ad7124_get_analog(STOP_NC_ADC); ad7124_get_analog(STOP_NC_ADC);
osDelay(1000); vTaskDelay(1000);
} }
/* USER CODE END start_adc_task */ /* USER CODE END start_adc_task */
} }

View File

@ -115,10 +115,6 @@ int main(void)
MX_USART2_UART_Init(); MX_USART2_UART_Init();
MX_USART3_UART_Init(); MX_USART3_UART_Init();
/* USER CODE BEGIN 2 */ /* USER CODE BEGIN 2 */
// tcp_echo_init(); // 朝务器初始化 TCP_Client_Init(); // 客户端初始化
// ad7124_setup(); // AD7124初始<E5889D>???
// dac161s997_init(); // DAC161S997初始<E5889D>???
// HAL_GPIO_WritePin(DO_EN_GPIO_Port, DO_EN_Pin, GPIO_PIN_SET); // DO输出使能 // HAL_GPIO_WritePin(DO_EN_GPIO_Port, DO_EN_Pin, GPIO_PIN_SET); // DO输出使能
HAL_UARTEx_ReceiveToIdle_DMA(&huart4, lcd_uart4.rx_data_temp, ARRAY_LEN(lcd_uart4.rx_data_temp)); HAL_UARTEx_ReceiveToIdle_DMA(&huart4, lcd_uart4.rx_data_temp, ARRAY_LEN(lcd_uart4.rx_data_temp));
@ -141,11 +137,7 @@ int main(void)
/* USER CODE END WHILE */ /* USER CODE END WHILE */
/* USER CODE BEGIN 3 */ /* USER CODE BEGIN 3 */
// MX_LWIP_Process();
// ad7124_get_analog(STOP_NC_ADC); // ad7124_get_analog(STOP_NC_ADC);
// dac161s997_output(DAC161S997_1, current_buff[0]);
// dac161s997_output(DAC161S997_2, current_buff[1]);
} }
/* USER CODE END 3 */ /* USER CODE END 3 */
} }
@ -182,7 +174,8 @@ void SystemClock_Config(void)
/** Initializes the CPU, AHB and APB buses clocks /** Initializes the CPU, AHB and APB buses clocks
*/ */
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2; RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4; RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4;
@ -239,8 +232,7 @@ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
/* USER CODE BEGIN Callback 0 */ /* USER CODE BEGIN Callback 0 */
/* USER CODE END Callback 0 */ /* USER CODE END Callback 0 */
if (htim->Instance == TIM1) if (htim->Instance == TIM1) {
{
HAL_IncTick(); HAL_IncTick();
} }
/* USER CODE BEGIN Callback 1 */ /* USER CODE BEGIN Callback 1 */

View File

@ -215,6 +215,16 @@
<WinNumber>1</WinNumber> <WinNumber>1</WinNumber>
<ItemText>ad7124_analog</ItemText> <ItemText>ad7124_analog</ItemText>
</Ww> </Ww>
<Ww>
<count>13</count>
<WinNumber>1</WinNumber>
<ItemText>ad7124_analog[AD7124_CHANNEL_EN_MAX]</ItemText>
</Ww>
<Ww>
<count>14</count>
<WinNumber>1</WinNumber>
<ItemText>osThread(lwip_task)</ItemText>
</Ww>
</WatchWindow1> </WatchWindow1>
<MemoryWindow1> <MemoryWindow1>
<Mm> <Mm>

View File

@ -73,7 +73,7 @@ ETH.IPParameters=MediaInterface
ETH.MediaInterface=HAL_ETH_RMII_MODE ETH.MediaInterface=HAL_ETH_RMII_MODE
FREERTOS.FootprintOK=true FREERTOS.FootprintOK=true
FREERTOS.IPParameters=Tasks01,configMAX_TASK_NAME_LEN,configENABLE_FPU,configMAX_PRIORITIES,FootprintOK FREERTOS.IPParameters=Tasks01,configMAX_TASK_NAME_LEN,configENABLE_FPU,configMAX_PRIORITIES,FootprintOK
FREERTOS.Tasks01=lwip_task,2,512,start_tcp_task,Default,NULL,Dynamic,NULL,NULL;led_task,-2,128,start_led_toggle_task,Default,NULL,Dynamic,NULL,NULL;dac_task,-2,512,start_dac_task,Default,NULL,Dynamic,NULL,NULL;adc_task,-2,128,start_adc_task,Default,NULL,Dynamic,NULL,NULL FREERTOS.Tasks01=lwip_task,2,512,start_tcp_task,Default,NULL,Dynamic,NULL,NULL;led_task,-2,128,start_led_toggle_task,Default,NULL,Dynamic,NULL,NULL;dac_task,0,512,start_dac_task,Default,NULL,Dynamic,NULL,NULL;adc_task,-1,128,start_adc_task,Default,NULL,Dynamic,NULL,NULL
FREERTOS.configENABLE_FPU=1 FREERTOS.configENABLE_FPU=1
FREERTOS.configMAX_PRIORITIES=32 FREERTOS.configMAX_PRIORITIES=32
FREERTOS.configMAX_TASK_NAME_LEN=24 FREERTOS.configMAX_TASK_NAME_LEN=24