#include "shoot_task.h"
#include "TopDefine.h"
#include "FreeRTOS.h"
#include "attrTask.h"
#include <cmsis_os2.h>
#include "remote_control.h"
#include "shoot.h"
#include "read_spi.h"
#include "dji_task.h"
#include "djiMotor.h"

extern RC_mess_t RC_mess;

Encoder_t encoder;

void Task_Shoot(void *argument)
{
    (void)argument; /* 未使用argument，消除警告 */
   const uint32_t delay_tick = osKernelGetTickFreq() / TASK_FREQ_CAN;
   
   Encoder_Init(&encoder);

 uint32_t tick = osKernelGetTickCount(); /* 控制任务运行频率的计算 */

    while(1)
    {

    //收到消息队列新数据
  
    // 更新编码器数据
    Update_Encoder(&encoder);

    control_clutch_shoot();

       
     tick += delay_tick; /* 计算下一个唤醒时刻 */
     osDelayUntil(tick); /* 运行结束，等待下一个周期唤醒 */
    }

}
