37 lines
840 B
C
37 lines
840 B
C
|
/**
|
|||
|
* can发送与解码任务
|
|||
|
*/
|
|||
|
#include "can_task.h"
|
|||
|
#include "TopDefine.h"
|
|||
|
#include "attrTask.h"
|
|||
|
#include "djiMotor.h"
|
|||
|
extern motor_measure_t *motor_3508_data;
|
|||
|
/**
|
|||
|
* \brief can任务
|
|||
|
*
|
|||
|
* \param argument 未使用
|
|||
|
*/
|
|||
|
void Task_Can(void *argument)
|
|||
|
{
|
|||
|
(void)argument; /* 未使用argument,消除警告 */
|
|||
|
// const uint32_t delay_tick = osKernelGetTickFreq() / TASK_FREQ_CAN;
|
|||
|
|
|||
|
djiInit();//FIFO滤波器初始化
|
|||
|
Odrive_Can_Init();
|
|||
|
|
|||
|
uint32_t tick = osKernelGetTickCount(); /* 控制任务运行频率的计算 */
|
|||
|
|
|||
|
while(1)
|
|||
|
{
|
|||
|
waitNewDji();//等待新数据
|
|||
|
djiMotorEncode();//数据解析
|
|||
|
|
|||
|
//将can数据添加到消息队列
|
|||
|
|
|||
|
|
|||
|
// tick += delay_tick; /* 计算下一个唤醒时刻 */
|
|||
|
// osDelayUntil(tick); /* 运行结束,等待下一个周期唤醒 */
|
|||
|
|
|||
|
}
|
|||
|
}
|