根据协议调挣显示

This commit is contained in:
hm
2020-10-14 21:28:47 +08:00
parent 39d8c3940e
commit f30d74e7e8
20 changed files with 881 additions and 554 deletions
+87 -11
View File
@@ -19,13 +19,34 @@ ServoSystem::ServoSystem(QWidget *parent) :
file.close();
//========
setColor(ui->checkBox_Ground,state::success);
setColor(ui->checkBox_onBoard,state::success);
setColor(ui->checkBox_28v,state::success);
setColor(ui->checkBox_56v,state::success);
setColor(ui->checkBox_AirSpeed,state::success);
setColor(ui->checkBox_500W,state::success);
//setColor(ui->label_LE_SBIT,state::failure);
cmdList.insert(0x19,"核心机主燃油泵");
cmdList.insert(0x29,"加力主燃油泵");
cmdList.insert(0x49,"加力点火燃油泵");
cmdList.insert(0x79,"尾喷口舵机");
cmdList.insert(0x89,"点火器");
cmdList.insert(0xb9,"起动控制1");
cmdList.insert(0xd9,"起动控制2");
cmdList.insert(0x1a,"核心机点火油阀");
cmdList.insert(0x2a,"核心机优先油阀");
cmdList.insert(0x4a,"核心机轻吹油阀");
cmdList.insert(0x7a,"核心机起动气阀");
cmdList.insert(0x8a,"核心机主油阀");
cmdList.insert(0xba,"加力主油阀");
cmdList.insert(0xda,"加力轻吹阀");
cmdList.insert(0xea,"加力点火快速阀");
cmdList.insert(0xd5,"手动转速控制");
}
ServoSystem::~ServoSystem()
@@ -91,22 +112,77 @@ void ServoSystem::setBUMState(mavlink_bmustate_t *t)
ui->label_onBoard_56V_Voltage->setText(QString::number(t->BAT2_group_voltage_mv * 0.001,'f',1));
ui->label_onBoard_56V_Current->setText(QString::number((float)((int16_t)t->BAT2_group_current_dA) *0.1f,'f',1));
}
void ServoSystem::setCheckState(uint32_t pos,QVariant value)
{
switch (pos) {
case 1:
setColor(ui->checkBox_onBoard,(value.toBool())?(state::success):(state::failure));
break;
case 2:
setColor(ui->checkBox_28v,(value.toBool())?(state::success):(state::failure));
break;
case 3:
setColor(ui->checkBox_56v,(value.toBool())?(state::success):(state::failure));
break;
case 4:
setColor(ui->checkBox_AirSpeed,(value.toBool())?(state::success):(state::failure));
break;
case 5:
setColor(ui->checkBox_500W,(value.toBool())?(state::success):(state::failure));
break;
}
}
void ServoSystem::setServoState(mavlink_servo_output_raw_t *t)
{
ui->label_rud_curr->setText(QString::number(t->servo1_raw));
ui->label_ele_l_curr->setText(QString::number(t->servo2_raw));
ui->label_ele_r_curr->setText(QString::number(t->servo3_raw));
ui->label_ail_l_curr->setText(QString::number(t->servo4_raw));
ui->label_ail_r_curr->setText(QString::number(t->servo5_raw));
ui->label_rud_curr->setText(QString::number(t->servo13_raw));
ui->label_ele_l_curr->setText(QString::number(t->servo15_raw));
ui->label_ele_r_curr->setText(QString::number(t->servo12_raw));
ui->label_ail_l_curr->setText(QString::number(t->servo14_raw));
ui->label_ail_r_curr->setText(QString::number(t->servo11_raw));
ui->label_rud_cmd->setText(QString::number(t->servo6_raw));
ui->label_ele_l_cmd->setText(QString::number(t->servo7_raw));
ui->label_ele_r_cmd->setText(QString::number(t->servo8_raw));
ui->label_ail_l_cmd->setText(QString::number(t->servo9_raw));
ui->label_ail_r_cmd->setText(QString::number(t->servo10_raw));
ui->label_rud_cmd->setText(QString::number(t->servo3_raw));
ui->label_ele_l_cmd->setText(QString::number(t->servo1_raw));
ui->label_ele_r_cmd->setText(QString::number(t->servo2_raw));
ui->label_ail_l_cmd->setText(QString::number(t->servo4_raw));
ui->label_ail_r_cmd->setText(QString::number(t->servo5_raw));
/*
sbus = feedback (ra)
sbus = feedback (re)
sbus = feedback (ru)
sbus = feedback (la)
15 sbus = feedback (le)
health = 0 ra000 re000 ru000 la000 le000
GBIT zero SBIT
*/
uint16_t health = t->servo16_raw;
//qDebug() << health;
setColor(ui->label_LE_SBIT,((health&0x0001) > 0)?(state::success):(state::failure));
setColor(ui->label_LE_ZERO,((health&0x0002) > 0)?(state::success):(state::failure));
setColor(ui->label_LE_GBIT,((health&0x0004) > 0)?(state::success):(state::failure));
setColor(ui->label_LA_SBIT,((health&0x0008) > 0)?(state::success):(state::failure));
setColor(ui->label_LA_ZERO,((health&0x0010) > 0)?(state::success):(state::failure));
setColor(ui->label_LA_GBIT,((health&0x0020) > 0)?(state::success):(state::failure));
setColor(ui->label_RU_SBIT,((health&0x0040) > 0)?(state::success):(state::failure));
setColor(ui->label_RU_ZERO,((health&0x0080) > 0)?(state::success):(state::failure));
setColor(ui->label_RU_GBIT,((health&0x0100) > 0)?(state::success):(state::failure));
setColor(ui->label_RE_SBIT,((health&0x0200) > 0)?(state::success):(state::failure));
setColor(ui->label_RE_ZERO,((health&0x0400) > 0)?(state::success):(state::failure));
setColor(ui->label_RE_GBIT,((health&0x0800) > 0)?(state::success):(state::failure));
setColor(ui->label_RA_SBIT,((health&0x1000) > 0)?(state::success):(state::failure));
setColor(ui->label_RA_ZERO,((health&0x2000) > 0)?(state::success):(state::failure));
setColor(ui->label_RA_GBIT,((health&0x4000) > 0)?(state::success):(state::failure));
}