加入串口消息处理任务

This commit is contained in:
不吃油炸鸡
2025-10-19 11:58:49 +08:00
parent cc3f9d243c
commit c5bb90333e
3 changed files with 28 additions and 3 deletions

View File

@@ -0,0 +1,16 @@
#ifndef __USER_MESSAGETASK_H__
#define __USER_MESSAGETASK_H__
#ifdef __cplusplus
extern "C" {
#endif
void MessageTask(void *argument);
#ifdef __cplusplus
}
#endif
#endif

View File

@@ -46,11 +46,10 @@ void HardwareInitTask(void *argument)
vTaskSuspendAll();
// uart start
HAL_UART_Receive_DMA(&huart6, (uint8_t*)uart_receive_str, USART_RX_BUFFER_SIZE);
HAL_UART_Receive_DMA(&huart6, (uint8_t*)uart_receive_buf, USART_RX_BUFFER_SIZE);
__HAL_UART_ENABLE_IT(&huart6, UART_IT_IDLE);
//
UART6_TX_Send((uint8_t *)"power-pico\r\n", 13);
// HAL_UART_Transmit_DMA(&huart6,(uint8_t *)"power-pico\r\n",13);
// queue for voltage and current
global_voltage_queue = queue_create(32);
@@ -87,7 +86,7 @@ void HardwareInitTask(void *argument)
sys_settings.backlight_level = 80;
sys_settings.key_sound_enable = 0;
sys_settings.language_select = 0;
sys_settings.rotation = 270;
sys_settings.rotation = 180;
// FUSB CC pin dis connect
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_10, GPIO_PIN_RESET);

View File

@@ -13,6 +13,7 @@
#include "user_HardwareInitTask.h"
#include "user_PDUFPTask.h"
#include "user_KeyTask.h"
#include "user_MessageTask.h"
/* Private typedef -----------------------------------------------------------*/
@@ -52,6 +53,14 @@ const osThreadAttr_t KeyTask_attributes = {
.priority = (osPriority_t) osPriorityNormal,
};
// message task
osThreadId_t MessageTaskHandle;
const osThreadAttr_t MessageTask_attributes = {
.name = "MessageTask",
.stack_size = 128 * 1,
.priority = (osPriority_t) osPriorityHigh,
};
//LVGL Handler task
osThreadId_t LvHandlerTaskHandle;
const osThreadAttr_t LvHandlerTask_attributes = {
@@ -88,6 +97,7 @@ void User_Tasks_Init(void)
HardwareInitTaskHandle = osThreadNew(HardwareInitTask, NULL, &HardwareInitTask_attributes);
// PDUFPTaskHandle = osThreadNew(PDUFPTask, NULL, &PDUFPTask_attributes);
KeyTaskHandle = osThreadNew(KeyTask, NULL, &KeyTask_attributes);
MessageTaskHandle = osThreadNew(MessageTask, NULL, &MessageTask_attributes);
LvHandlerTaskHandle = osThreadNew(LvHandlerTask, NULL, &LvHandlerTask_attributes);
/* add events, ... */