准备增加多航线功能
This commit is contained in:
@@ -52,12 +52,13 @@ void MissionProcess::process()//线程函数
|
||||
}
|
||||
}
|
||||
|
||||
void MissionProcess::ReadCmd(uint8_t m_sysid, uint8_t m_compid)
|
||||
void MissionProcess::ReadCmd(uint8_t m_sysid, uint8_t m_compid,uint8_t m_group)
|
||||
{
|
||||
if(mission_status.m_Mode == Nop_Mode)//没有任务正在下载
|
||||
{
|
||||
mission_status.m_Mode = RecieveMode;//接收模式
|
||||
|
||||
mission_status.recieve.group = m_group;
|
||||
qDebug() << "read mission" << sysid << compid;
|
||||
|
||||
}
|
||||
@@ -304,7 +305,7 @@ void MissionProcess::ReadStateMachine(void)
|
||||
qDebug() << "mission count reccieved";
|
||||
timeout_count = 0;
|
||||
|
||||
request_int(0);//读取0点
|
||||
request_int(0,0);//读取0点
|
||||
time = QTime::currentTime().msecsSinceStartOfDay();
|
||||
mission_status.recieve.isWaitingforItem = true;
|
||||
step ++;
|
||||
@@ -366,7 +367,7 @@ void MissionProcess::ReadStateMachine(void)
|
||||
qDebug() << "request mission_item_int.seq+1" << (mission_item_int.seq+1);
|
||||
|
||||
mission_status.recieve.isWaitingforItem = true;
|
||||
request_int(mission_item_int.seq+1);
|
||||
request_int(mission_item_int.seq+1,0);
|
||||
timeout_count = 0;
|
||||
time = QTime::currentTime().msecsSinceStartOfDay();
|
||||
|
||||
@@ -588,7 +589,7 @@ void MissionProcess::request_list(void)//读取整列请求
|
||||
static mavlink_message_t msg;
|
||||
static mavlink_mission_request_list_t mission_request_list;
|
||||
|
||||
mission_request_list.mission_type = 0;
|
||||
mission_request_list.mission_type = 0;//3,4,5,6对应 1,2,3,4
|
||||
mission_request_list.target_system = sysid;
|
||||
mission_request_list.target_component = compid;
|
||||
|
||||
@@ -610,7 +611,7 @@ void MissionProcess::count(uint16_t count)//计数值
|
||||
Send(msg);
|
||||
}
|
||||
|
||||
void MissionProcess::request_int(uint16_t seq)//读取请求
|
||||
void MissionProcess::request_int(uint16_t seq,uint8_t type)//读取请求
|
||||
{
|
||||
static mavlink_message_t msg;
|
||||
static mavlink_mission_request_int_t mission_request_int;
|
||||
@@ -624,12 +625,12 @@ void MissionProcess::request_int(uint16_t seq)//读取请求
|
||||
Send(msg);
|
||||
}
|
||||
|
||||
void MissionProcess::request(uint16_t seq)//读取请求
|
||||
void MissionProcess::request(uint16_t seq,uint8_t type)//读取请求
|
||||
{
|
||||
static mavlink_message_t msg;
|
||||
static mavlink_mission_request_t mission_request;
|
||||
|
||||
mission_request.mission_type = 0;
|
||||
mission_request.mission_type = type;
|
||||
mission_request.seq = seq;
|
||||
mission_request.target_system = sysid;
|
||||
mission_request.target_component = compid;
|
||||
|
||||
@@ -35,6 +35,7 @@ class MissionProcess : public ThreadTemplet
|
||||
typedef struct {
|
||||
bool isWaitingforCount;
|
||||
bool isWaitingforItem;
|
||||
int group;
|
||||
}_recieve;
|
||||
|
||||
typedef struct {
|
||||
@@ -65,13 +66,15 @@ public:
|
||||
_mission_ mission_status;
|
||||
|
||||
|
||||
int currentGroup = 3;
|
||||
|
||||
public slots:
|
||||
|
||||
void Parse(mavlink_message_t msg);
|
||||
|
||||
|
||||
//读取航线的指令
|
||||
void ReadCmd(uint8_t m_sysid, uint8_t m_compid);
|
||||
void ReadCmd(uint8_t m_sysid, uint8_t m_compid, uint8_t m_group);
|
||||
void WriteCmd(uint8_t m_sysid, uint8_t m_compid ,uint32_t count );
|
||||
|
||||
|
||||
@@ -104,8 +107,8 @@ private slots:
|
||||
//所有的相关函数
|
||||
void request_list(void);
|
||||
void count(uint16_t count);
|
||||
void request_int(uint16_t seq);
|
||||
void request(uint16_t seq);
|
||||
void request_int(uint16_t seq,uint8_t type);
|
||||
void request(uint16_t seq, uint8_t type);
|
||||
void item_int(float param1, float param2, float param3, float param4,
|
||||
int32_t x, int32_t y, float z,
|
||||
uint16_t seq, uint16_t command,
|
||||
|
||||
Reference in New Issue
Block a user