53 lines
1.1 KiB
C++
53 lines
1.1 KiB
C++
#include "nucTask.hpp"
|
||
#include "nuc.h"
|
||
#include "userTask.h"
|
||
#include "TopDefine.h"//事件组的一些东西
|
||
#include "FreeRTOS.h"
|
||
#include <cmsis_os2.h>
|
||
|
||
#ifdef DEBUG
|
||
|
||
NUC_t cmd_fromnuc;
|
||
|
||
#endif
|
||
|
||
void Function_nuc(void *argument)
|
||
{
|
||
(void)argument; /* 未使用argument,消除警告 */
|
||
|
||
const uint32_t delay_tick = osKernelGetTickFreq() / TASK_FREQ_AI;
|
||
|
||
NUC_Init(&cmd_fromnuc);
|
||
|
||
uint32_t tick = osKernelGetTickCount();
|
||
|
||
while(1)
|
||
{
|
||
#ifdef DEBUG
|
||
task_struct.stack_water_mark.nuc = osThreadGetStackSpace(osThreadGetId());
|
||
#endif
|
||
NUC_StartReceiving();
|
||
|
||
NUC_RawParse(&cmd_fromnuc);
|
||
|
||
//掉线处理有空写
|
||
// if(NUC_WaitDmaCplt())
|
||
// {
|
||
// NUC_RawParse(&cmd_fromnuc);
|
||
|
||
// }
|
||
// else
|
||
// {
|
||
// NUC_HandleOffline(&cmd_fromnuc);
|
||
// }
|
||
|
||
osMessageQueueReset(task_struct.msgq.nuc); // 清空消息队列
|
||
osMessageQueuePut(task_struct.msgq.nuc,&(cmd_fromnuc),0,0);
|
||
osDelay(2);
|
||
|
||
tick += delay_tick; /* 计算下一个唤醒时刄1ķ*/
|
||
osDelayUntil(tick);
|
||
|
||
}
|
||
}
|