parameterdump.cpp
471 lines
| 19.2 KiB
| text/x-c
|
CppLexer
/ parameterdump / parameterdump.cpp
r46 | #include "parameterdump.h" | |||
ParameterDump::ParameterDump(QWidget *parent) : | ||||
QWidget(parent) | ||||
{ | ||||
this->buildTabParameterDump(); | ||||
packetToSend = new TCPacketToSend(); | ||||
this->setLayout(layout_parameterDump); | ||||
} | ||||
void ParameterDump::buildTabParameterDump() | ||||
{ | ||||
buildCOMM(); | ||||
buildNORM(); | ||||
buildBURST(); | ||||
buildSBM1(); | ||||
buildSBM2(); | ||||
buildActions(); | ||||
layout_parameterDump = new QGridLayout(); | ||||
layout_parameterDump->addWidget(groupbox_COMM, 0, 0, 1, 1); | ||||
layout_parameterDump->addWidget(groupbox_NORM, 0, 1, 1, 1); | ||||
layout_parameterDump->addWidget(groupbox_BURST, 1, 0, 1, 1); | ||||
layout_parameterDump->addWidget(groupbox_ACTIONS, 1, 1, 1, 1); | ||||
layout_parameterDump->addWidget(groupbox_SBM1,2 , 0, 1, 1); | ||||
layout_parameterDump->addWidget(groupbox_SBM2, 2, 1, 1, 1); | ||||
layout_parameterDump->setRowStretch(3, 1); | ||||
layout_parameterDump->setColumnStretch(2, 1); | ||||
layout_parameterDump->setRowStretch(3, 1); | ||||
layout_parameterDump->setColumnStretch(2, 1); | ||||
} | ||||
void ParameterDump::buildCOMM() | ||||
{ | ||||
groupbox_COMM = new QGroupBox(tr("COMMON_PAR")); | ||||
layout_COMM = new QGridLayout(); | ||||
sy_lfr_bw = new QLabel("sy_lfr_bw "); | ||||
sy_lfr_sp0 = new QLabel("sy_lfr_sp0 "); | ||||
sy_lfr_sp1 = new QLabel("sy_lfr_sp1 "); | ||||
sy_lfr_r0 = new QLabel("sy_lfr_r0 "); | ||||
sy_lfr_r1 = new QLabel("sy_lfr_r1 "); | ||||
spinbox_sy_lfr_bw = new QSpinBox(); | ||||
spinbox_sy_lfr_sp0 = new QSpinBox(); | ||||
spinbox_sy_lfr_sp1 = new QSpinBox(); | ||||
spinbox_sy_lfr_r0 = new QSpinBox(); | ||||
spinbox_sy_lfr_r1 = new QSpinBox(); | ||||
spinbox_sy_lfr_bw->setRange(0, 1); | ||||
spinbox_sy_lfr_sp0->setRange(0, 1); | ||||
spinbox_sy_lfr_sp1->setRange(0, 1); | ||||
spinbox_sy_lfr_r0->setRange(0, 1); | ||||
spinbox_sy_lfr_r1->setRange(0, 1); | ||||
spinbox_sy_lfr_bw->setValue(1); | ||||
spinbox_sy_lfr_sp0->setValue(0); | ||||
spinbox_sy_lfr_sp1->setValue(0); | ||||
spinbox_sy_lfr_r0->setValue(0); | ||||
spinbox_sy_lfr_r1->setValue(0); | ||||
layout_COMM->addWidget(sy_lfr_bw, 0, 0, 1, 1); | ||||
layout_COMM->addWidget(sy_lfr_sp0, 1, 0, 1, 1); | ||||
layout_COMM->addWidget(sy_lfr_sp1, 2, 0, 1, 1); | ||||
layout_COMM->addWidget(sy_lfr_r0, 3, 0, 1, 1); | ||||
layout_COMM->addWidget(sy_lfr_r1, 4, 0, 1, 1); | ||||
layout_COMM->addWidget(spinbox_sy_lfr_bw, 0, 1, 1, 1); | ||||
layout_COMM->addWidget(spinbox_sy_lfr_sp0, 1, 1, 1, 1); | ||||
layout_COMM->addWidget(spinbox_sy_lfr_sp1, 2, 1, 1, 1); | ||||
layout_COMM->addWidget(spinbox_sy_lfr_r0, 3, 1, 1, 1); | ||||
layout_COMM->addWidget(spinbox_sy_lfr_r1, 4, 1, 1, 1); | ||||
layout_COMM->setColumnStretch(2, 1); | ||||
layout_COMM->setRowStretch(5, 1); | ||||
groupbox_COMM->setLayout(layout_COMM); | ||||
} | ||||
void ParameterDump::buildNORM() | ||||
{ | ||||
groupbox_NORM = new QGroupBox(tr("NORMAL_PAR")); | ||||
layout_NORM = new QGridLayout(); | ||||
sy_lfr_n_swf_l = new QLabel("sy_lfr_n_swf_l "); | ||||
sy_lfr_n_swf_p = new QLabel("sy_lfr_n_swf_p "); | ||||
sy_lfr_n_asm_p = new QLabel("sy_lfr_n_asm_p "); | ||||
sy_lfr_n_bp_p0 = new QLabel("sy_lfr_n_bp_p0 "); | ||||
sy_lfr_n_bp_p1 = new QLabel("sy_lfr_n_bp_p1 "); | ||||
spinbox_sy_lfr_n_swf_l = new QSpinBox(); | ||||
spinbox_sy_lfr_n_swf_p = new QSpinBox(); | ||||
spinbox_sy_lfr_n_asm_p = new QSpinBox(); | ||||
spinbox_sy_lfr_n_bp_p0 = new QSpinBox(); | ||||
spinbox_sy_lfr_n_bp_p1 = new QSpinBox(); | ||||
spinbox_sy_lfr_n_swf_l->setRange(256, 65535); | ||||
spinbox_sy_lfr_n_swf_p->setRange(16, 65535); | ||||
spinbox_sy_lfr_n_asm_p->setRange(2, 65535); | ||||
spinbox_sy_lfr_n_bp_p0->setRange(4, 255); | ||||
spinbox_sy_lfr_n_bp_p1->setRange(20, 255); | ||||
spinbox_sy_lfr_n_swf_l->setValue(2048); | ||||
spinbox_sy_lfr_n_swf_p->setValue(300); | ||||
spinbox_sy_lfr_n_asm_p->setValue(3600); | ||||
spinbox_sy_lfr_n_bp_p0->setValue(4); | ||||
spinbox_sy_lfr_n_bp_p1->setValue(20); | ||||
layout_NORM->addWidget(sy_lfr_n_swf_l, 0, 0, 1, 1); | ||||
layout_NORM->addWidget(sy_lfr_n_swf_p, 1, 0, 1, 1); | ||||
layout_NORM->addWidget(sy_lfr_n_asm_p, 2, 0, 1, 1); | ||||
layout_NORM->addWidget(sy_lfr_n_bp_p0, 3, 0, 1, 1); | ||||
layout_NORM->addWidget(sy_lfr_n_bp_p1, 4, 0, 1, 1); | ||||
layout_NORM->addWidget(spinbox_sy_lfr_n_swf_l, 0, 1, 1, 1); | ||||
layout_NORM->addWidget(spinbox_sy_lfr_n_swf_p, 1, 1, 1, 1); | ||||
layout_NORM->addWidget(spinbox_sy_lfr_n_asm_p, 2, 1, 1, 1); | ||||
layout_NORM->addWidget(spinbox_sy_lfr_n_bp_p0, 3, 1, 1, 1); | ||||
layout_NORM->addWidget(spinbox_sy_lfr_n_bp_p1, 4, 1, 1, 1); | ||||
layout_NORM->setColumnStretch(2, 1); | ||||
layout_NORM->setRowStretch(5, 1); | ||||
groupbox_NORM->setLayout(layout_NORM); | ||||
} | ||||
void ParameterDump::buildBURST() | ||||
{ | ||||
groupbox_BURST = new QGroupBox(tr("BURST_PAR")); | ||||
layout_BURST = new QGridLayout(); | ||||
sy_lfr_b_bp_p0 = new QLabel("sy_lfr_b_bp_p0 "); | ||||
sy_lfr_b_bp_p1 = new QLabel("sy_lfr_b_bp_p1 "); | ||||
spinbox_sy_lfr_b_bp_p0 = new QSpinBox(); | ||||
spinbox_sy_lfr_b_bp_p1 = new QSpinBox(); | ||||
spinbox_sy_lfr_b_bp_p0->setRange(1, 255); | ||||
spinbox_sy_lfr_b_bp_p1->setRange(5, 255); | ||||
layout_BURST->addWidget(sy_lfr_b_bp_p0, 0, 0, 1, 1); | ||||
layout_BURST->addWidget(sy_lfr_b_bp_p1, 1, 0, 1, 1); | ||||
layout_BURST->addWidget(spinbox_sy_lfr_b_bp_p0, 0, 1, 1, 1); | ||||
layout_BURST->addWidget(spinbox_sy_lfr_b_bp_p1, 1, 1, 1, 1); | ||||
layout_BURST->setColumnStretch(2, 1); | ||||
layout_BURST->setRowStretch(3, 1); | ||||
groupbox_BURST->setLayout(layout_BURST); | ||||
} | ||||
void ParameterDump::buildSBM1() | ||||
{ | ||||
groupbox_SBM1 = new QGroupBox(tr("SBM1_PAR")); | ||||
layout_SBM1 = new QGridLayout(); | ||||
sy_lfr_s1_bp_p0 = new QLabel("sy_lfr_s1_bp_p0 "); | ||||
sy_lfr_s1_bp_p1 = new QLabel("sy_lfr_s1_bp_p1 "); | ||||
spinbox_sy_lfr_s1_bp_p0 = new QDoubleSpinBox(); | ||||
spinbox_sy_lfr_s1_bp_p1 = new QSpinBox(); | ||||
spinbox_sy_lfr_s1_bp_p0->setRange(0.25, 0.25*256); | ||||
spinbox_sy_lfr_b_bp_p0->setValue(0.25); | ||||
spinbox_sy_lfr_s1_bp_p1->setRange(1, 255); | ||||
spinbox_sy_lfr_b_bp_p1->setValue(1); | ||||
layout_SBM1->addWidget(sy_lfr_s1_bp_p0, 0, 0, 1, 1); | ||||
layout_SBM1->addWidget(sy_lfr_s1_bp_p1, 1, 0, 1, 1); | ||||
layout_SBM1->addWidget(spinbox_sy_lfr_s1_bp_p0, 0, 1, 1, 1); | ||||
layout_SBM1->addWidget(spinbox_sy_lfr_s1_bp_p1, 1, 1, 1, 1); | ||||
layout_SBM1->setColumnStretch(2, 1); | ||||
layout_SBM1->setRowStretch(3, 1); | ||||
groupbox_SBM1->setLayout(layout_SBM1); | ||||
} | ||||
void ParameterDump::buildSBM2() | ||||
{ | ||||
groupbox_SBM2 = new QGroupBox(tr("SBM2_PAR")); | ||||
layout_SBM2 = new QGridLayout(); | ||||
sy_lfr_s2_bp_p0 = new QLabel("sy_lfr_s2_bp_p0 "); | ||||
sy_lfr_s2_bp_p1 = new QLabel("sy_lfr_s2_bp_p1 "); | ||||
spinbox_sy_lfr_s2_bp_p0 = new QSpinBox(); | ||||
spinbox_sy_lfr_s2_bp_p1 = new QSpinBox(); | ||||
spinbox_sy_lfr_s2_bp_p0->setRange(1, 255); | ||||
spinbox_sy_lfr_s2_bp_p1->setRange(5, 255); | ||||
layout_SBM2->addWidget(sy_lfr_s2_bp_p0, 0, 0, 1, 1); | ||||
layout_SBM2->addWidget(sy_lfr_s2_bp_p1, 1, 0, 1, 1); | ||||
layout_SBM2->addWidget(spinbox_sy_lfr_s2_bp_p0, 0, 1, 1, 1); | ||||
layout_SBM2->addWidget(spinbox_sy_lfr_s2_bp_p1, 1, 1, 1, 1); | ||||
layout_SBM2->setColumnStretch(2, 1); | ||||
layout_SBM2->setRowStretch(3, 1); | ||||
groupbox_SBM2->setLayout(layout_SBM2); | ||||
} | ||||
void ParameterDump::buildActions() | ||||
{ | ||||
groupbox_ACTIONS = new QGroupBox(tr("Actions")); | ||||
layout_ACTIONS = new QGridLayout; | ||||
button_loadCommon = new QPushButton(tr("LOAD_COMM")); | ||||
button_loadNormal = new QPushButton(tr("LOAD_NORM")); | ||||
button_loadBurst = new QPushButton(tr("LOAD_BURST")); | ||||
button_loadSBM1 = new QPushButton(tr("LOAD_SBM1")); | ||||
button_loadSBM2 = new QPushButton(tr("LOAD_SBM2")); | ||||
button_parameterDump = new QPushButton(tr("DUMP_PAR")); | ||||
button_loadCommon->setEnabled(false); | ||||
button_loadNormal->setEnabled(false); | ||||
button_loadBurst->setEnabled(false); | ||||
button_loadSBM1->setEnabled(false); | ||||
button_loadSBM2->setEnabled(false); | ||||
button_parameterDump->setEnabled(false); | ||||
layout_ACTIONS->addWidget(button_loadCommon, 0, 0, 1, 1); | ||||
layout_ACTIONS->addWidget(button_loadNormal, 0, 1, 1, 1); | ||||
layout_ACTIONS->addWidget(button_loadBurst, 1, 0, 1, 1); | ||||
layout_ACTIONS->addWidget(button_parameterDump, 1, 1, 1, 1); | ||||
layout_ACTIONS->addWidget(button_loadSBM1, 2, 0, 1, 1); | ||||
layout_ACTIONS->addWidget(button_loadSBM2, 2, 1, 1, 1); | ||||
groupbox_ACTIONS->setLayout(layout_ACTIONS); | ||||
connect(this->button_parameterDump, SIGNAL(clicked()), this, SLOT(sendParameterDump())); | ||||
connect(this->button_loadCommon, SIGNAL(clicked()), this, SLOT(sendLoadCommon())); | ||||
connect(this->button_loadNormal, SIGNAL(clicked()), this, SLOT(sendLoadNormal())); | ||||
connect(this->button_loadBurst, SIGNAL(clicked()), this, SLOT(sendLoadBurst())); | ||||
connect(this->button_loadSBM1, SIGNAL(clicked()), this, SLOT(sendLoadSBM1())); | ||||
connect(this->button_loadSBM2, SIGNAL(clicked()), this, SLOT(sendLoadSBM2())); | ||||
} | ||||
void ParameterDump::updateParameterDump(TMPacketToRead *tmPacketToRead) | ||||
{ | ||||
Packet_TM_LFR_PARAMETER_DUMP_t *parameterPacket; | ||||
parameterPacket = (Packet_TM_LFR_PARAMETER_DUMP_t *) tmPacketToRead->Value; | ||||
// COMMON | ||||
spinbox_sy_lfr_bw->setValue( (parameterPacket->bw_sp0_sp1_r0_r1 & 0x10 ) >> 4 ); | ||||
spinbox_sy_lfr_sp0->setValue( (parameterPacket->bw_sp0_sp1_r0_r1 & 0x08 ) >> 3 ); | ||||
spinbox_sy_lfr_sp1->setValue( (parameterPacket->bw_sp0_sp1_r0_r1 & 0x04 ) >> 2 ); | ||||
spinbox_sy_lfr_r0->setValue( (parameterPacket->bw_sp0_sp1_r0_r1 & 0x02 ) >> 1 ); | ||||
spinbox_sy_lfr_r1->setValue( (parameterPacket->bw_sp0_sp1_r0_r1 & 0x01 ) ); | ||||
// NORMAL | ||||
spinbox_sy_lfr_n_swf_l->setValue(parameterPacket->sy_lfr_n_swf_l[0] * 256 | ||||
+ parameterPacket->sy_lfr_n_swf_l[1]); | ||||
spinbox_sy_lfr_n_swf_p->setValue(parameterPacket->sy_lfr_n_swf_p[0] * 256 | ||||
+ parameterPacket->sy_lfr_n_swf_p[1]); | ||||
spinbox_sy_lfr_n_asm_p->setValue(parameterPacket->sy_lfr_n_asm_p[0] * 256 | ||||
+ parameterPacket->sy_lfr_n_asm_p[1]); | ||||
spinbox_sy_lfr_n_bp_p0->setValue(parameterPacket->sy_lfr_n_bp_p0); | ||||
spinbox_sy_lfr_n_bp_p1->setValue(parameterPacket->sy_lfr_n_bp_p1); | ||||
// BURST | ||||
spinbox_sy_lfr_b_bp_p0->setValue(parameterPacket->sy_lfr_b_bp_p0); | ||||
spinbox_sy_lfr_b_bp_p1->setValue(parameterPacket->sy_lfr_b_bp_p1); | ||||
// SBM1 | ||||
spinbox_sy_lfr_s1_bp_p0->setValue(parameterPacket->sy_lfr_s1_bp_p0); | ||||
spinbox_sy_lfr_s1_bp_p1->setValue(parameterPacket->sy_lfr_s1_bp_p1); | ||||
// SBM2 | ||||
spinbox_sy_lfr_s2_bp_p0->setValue(parameterPacket->sy_lfr_s2_bp_p0); | ||||
spinbox_sy_lfr_s2_bp_p1->setValue(parameterPacket->sy_lfr_s2_bp_p1); | ||||
} | ||||
void ParameterDump::sendParameterDump() | ||||
{ | ||||
Packet_TC_LFR_DUMP_PAR_t packet; | ||||
unsigned char crcAsTwoBytes[2]; | ||||
packet.packetID[0] = (unsigned char) (TC_LFR_PACKET_ID >> 8); | ||||
packet.packetID[1] = (unsigned char) (TC_LFR_PACKET_ID ); | ||||
packet.packetSequenceControl[0] = (unsigned char) (TC_LFR_PACKET_SEQUENCE_CONTROL >> 8); | ||||
packet.packetSequenceControl[1] = (unsigned char) (TC_LFR_PACKET_SEQUENCE_CONTROL ); | ||||
packet.packetLength[0] = (unsigned char) (PACKET_LENGTH_TC_LFR_DUMP_PAR >> 8); | ||||
packet.packetLength[1] = (unsigned char) (PACKET_LENGTH_TC_LFR_DUMP_PAR ); | ||||
packet.ccsdsSecHeaderFlag_pusVersion_ack = 0x19; | ||||
packet.serviceType = TC_TYPE_DEFAULT; | ||||
packet.serviceSubType = TC_SUBTYPE_DUMP; | ||||
packet.sourceID = SID_DEFAULT; | ||||
packetToSend->GetCRCAsTwoBytes((unsigned char*) &packet, crcAsTwoBytes, | ||||
PACKET_LENGTH_TC_LFR_DUMP_PAR + CCSDS_TC_TM_PACKET_OFFSET - 2); | ||||
packet.crc[0] = crcAsTwoBytes[0]; | ||||
packet.crc[1] = crcAsTwoBytes[1]; | ||||
emit WriteSPWSig((char*) &packet, PACKET_LENGTH_TC_LFR_DUMP_PAR + CCSDS_TC_TM_PACKET_OFFSET, | ||||
CCSDS_NODE_ADDRESS, CCSDS_USER_APP); | ||||
} | ||||
void ParameterDump::sendLoadCommon() | ||||
{ | ||||
Packet_TC_LFR_LOAD_COMMON_PAR_t packet; | ||||
unsigned char crcAsTwoBytes[2]; | ||||
packet.packetID[0] = (unsigned char) (TC_LFR_PACKET_ID >> 8); | ||||
packet.packetID[1] = (unsigned char) (TC_LFR_PACKET_ID ); | ||||
packet.packetSequenceControl[0] = (unsigned char) (TC_LFR_PACKET_SEQUENCE_CONTROL >> 8); | ||||
packet.packetSequenceControl[1] = (unsigned char) (TC_LFR_PACKET_SEQUENCE_CONTROL ); | ||||
packet.packetLength[0] = (unsigned char) (PACKET_LENGTH_TC_LFR_LOAD_COMMON_PAR >> 8); | ||||
packet.packetLength[1] = (unsigned char) (PACKET_LENGTH_TC_LFR_LOAD_COMMON_PAR ); | ||||
packet.ccsdsSecHeaderFlag_pusVersion_ack = TC_LFR_DATA_FIELD_HEADER0; | ||||
packet.serviceType = TC_TYPE_DEFAULT; | ||||
packet.serviceSubType = TC_SUBTYPE_LOAD_COMMON_PAR; | ||||
packet.sourceID = SID_DEFAULT; | ||||
packet.spare = TC_LFR_LOAD_COMMON_PAR_SPARE; | ||||
packet.bw_sp0_sp1_r0_r1 = (spinbox_sy_lfr_bw->value() << 4) | ||||
+ (spinbox_sy_lfr_sp0->value() << 3) | ||||
+ (spinbox_sy_lfr_sp1->value() << 2) | ||||
+ (spinbox_sy_lfr_r0->value() << 1) | ||||
+ (spinbox_sy_lfr_r1->value() ); | ||||
packetToSend->GetCRCAsTwoBytes((unsigned char*) &packet, crcAsTwoBytes, | ||||
PACKET_LENGTH_TC_LFR_LOAD_COMMON_PAR + CCSDS_TC_TM_PACKET_OFFSET - 2); | ||||
packet.crc[0] = crcAsTwoBytes[0]; | ||||
packet.crc[1] = crcAsTwoBytes[1]; | ||||
emit WriteSPWSig((char*) &packet, PACKET_LENGTH_TC_LFR_LOAD_COMMON_PAR + CCSDS_TC_TM_PACKET_OFFSET, | ||||
CCSDS_NODE_ADDRESS, CCSDS_USER_APP); | ||||
} | ||||
void ParameterDump::sendLoadNormal() | ||||
{ | ||||
Packet_TC_LFR_LOAD_NORMAL_PAR_t packet; | ||||
unsigned char crcAsTwoBytes[2]; | ||||
packet.packetID[0] = (unsigned char) (TC_LFR_PACKET_ID >> 8); | ||||
packet.packetID[1] = (unsigned char) (TC_LFR_PACKET_ID ); | ||||
packet.packetSequenceControl[0] = (unsigned char) (TC_LFR_PACKET_SEQUENCE_CONTROL >> 8); | ||||
packet.packetSequenceControl[1] = (unsigned char) (TC_LFR_PACKET_SEQUENCE_CONTROL ); | ||||
packet.packetLength[0] = (unsigned char) (PACKET_LENGTH_TC_LFR_LOAD_NORMAL_PAR >> 8); | ||||
packet.packetLength[1] = (unsigned char) (PACKET_LENGTH_TC_LFR_LOAD_NORMAL_PAR ); | ||||
packet.ccsdsSecHeaderFlag_pusVersion_ack = TC_LFR_DATA_FIELD_HEADER0; | ||||
packet.serviceType = TC_TYPE_DEFAULT; | ||||
packet.serviceSubType = TC_SUBTYPE_LOAD_NORMAL_PAR; | ||||
packet.sourceID = SID_DEFAULT; | ||||
packet.sy_lfr_n_swf_l[0] = (unsigned char) (spinbox_sy_lfr_n_swf_l->value() >> 8); | ||||
packet.sy_lfr_n_swf_l[1] = (unsigned char) (spinbox_sy_lfr_n_swf_l->value() ); | ||||
packet.sy_lfr_n_swf_p[0] = (unsigned char) (spinbox_sy_lfr_n_swf_p->value() >> 8); | ||||
packet.sy_lfr_n_swf_p[1] = (unsigned char) (spinbox_sy_lfr_n_swf_p->value() ); | ||||
packet.sy_lfr_n_asm_p[0] = (unsigned char) (spinbox_sy_lfr_n_asm_p->value() >> 8); | ||||
packet.sy_lfr_n_asm_p[1] = (unsigned char) (spinbox_sy_lfr_n_asm_p->value() ); | ||||
packet.sy_lfr_n_bp_p0 = (unsigned char) (spinbox_sy_lfr_n_bp_p0->value() ); | ||||
packet.sy_lfr_n_bp_p1 = (unsigned char) (spinbox_sy_lfr_n_bp_p1->value() ); | ||||
packetToSend->GetCRCAsTwoBytes((unsigned char*) &packet, crcAsTwoBytes, | ||||
PACKET_LENGTH_TC_LFR_LOAD_NORMAL_PAR + CCSDS_TC_TM_PACKET_OFFSET - 2); | ||||
packet.crc[0] = crcAsTwoBytes[0]; | ||||
packet.crc[1] = crcAsTwoBytes[1]; | ||||
emit WriteSPWSig((char*) &packet, PACKET_LENGTH_TC_LFR_LOAD_NORMAL_PAR + CCSDS_TC_TM_PACKET_OFFSET, | ||||
CCSDS_NODE_ADDRESS, CCSDS_USER_APP); | ||||
} | ||||
void ParameterDump::sendLoadBurst() | ||||
{ | ||||
Packet_TC_LFR_LOAD_BURST_SBM1_SBM2_PAR_t packet; | ||||
unsigned char crcAsTwoBytes[2]; | ||||
packet.packetID[0] = (unsigned char) (TC_LFR_PACKET_ID >> 8); | ||||
packet.packetID[1] = (unsigned char) (TC_LFR_PACKET_ID ); | ||||
packet.packetSequenceControl[0] = (unsigned char) (TC_LFR_PACKET_SEQUENCE_CONTROL >> 8); | ||||
packet.packetSequenceControl[1] = (unsigned char) (TC_LFR_PACKET_SEQUENCE_CONTROL ); | ||||
packet.packetLength[0] = (unsigned char) (PACKET_LENGTH_TC_LFR_LOAD_BURST_PAR >> 8); | ||||
packet.packetLength[1] = (unsigned char) (PACKET_LENGTH_TC_LFR_LOAD_BURST_PAR ); | ||||
packet.ccsdsSecHeaderFlag_pusVersion_ack = TC_LFR_DATA_FIELD_HEADER0; | ||||
packet.serviceType = TC_TYPE_DEFAULT; | ||||
packet.serviceSubType = TC_SUBTYPE_LOAD_BURST_PAR; | ||||
packet.sourceID = SID_DEFAULT; | ||||
packet.sy_lfr_bp_p0 = (unsigned char) (spinbox_sy_lfr_b_bp_p0->value() ); | ||||
packet.sy_lfr_bp_p1 = (unsigned char) (spinbox_sy_lfr_b_bp_p1->value() ); | ||||
packetToSend->GetCRCAsTwoBytes((unsigned char*) &packet, crcAsTwoBytes, | ||||
PACKET_LENGTH_TC_LFR_LOAD_BURST_PAR + CCSDS_TC_TM_PACKET_OFFSET - 2); | ||||
packet.crc[0] = crcAsTwoBytes[0]; | ||||
packet.crc[1] = crcAsTwoBytes[1]; | ||||
emit WriteSPWSig((char*) &packet, PACKET_LENGTH_TC_LFR_LOAD_BURST_PAR + CCSDS_TC_TM_PACKET_OFFSET, | ||||
CCSDS_NODE_ADDRESS, CCSDS_USER_APP); | ||||
} | ||||
void ParameterDump::sendLoadSBM1() | ||||
{ | ||||
Packet_TC_LFR_LOAD_BURST_SBM1_SBM2_PAR_t packet; | ||||
unsigned char crcAsTwoBytes[2]; | ||||
packet.packetID[0] = (unsigned char) (TC_LFR_PACKET_ID >> 8); | ||||
packet.packetID[1] = (unsigned char) (TC_LFR_PACKET_ID ); | ||||
packet.packetSequenceControl[0] = (unsigned char) (TC_LFR_PACKET_SEQUENCE_CONTROL >> 8); | ||||
packet.packetSequenceControl[1] = (unsigned char) (TC_LFR_PACKET_SEQUENCE_CONTROL ); | ||||
packet.packetLength[0] = (unsigned char) (PACKET_LENGTH_TC_LFR_LOAD_SBM1_PAR >> 8); | ||||
packet.packetLength[1] = (unsigned char) (PACKET_LENGTH_TC_LFR_LOAD_SBM1_PAR ); | ||||
packet.ccsdsSecHeaderFlag_pusVersion_ack = TC_LFR_DATA_FIELD_HEADER0; | ||||
packet.serviceType = TC_TYPE_DEFAULT; | ||||
packet.serviceSubType = TC_SUBTYPE_LOAD_SBM1_PAR; | ||||
packet.sourceID = SID_DEFAULT; | ||||
packet.sy_lfr_bp_p0 = (unsigned char) (spinbox_sy_lfr_s1_bp_p0->value() ); | ||||
packet.sy_lfr_bp_p1 = (unsigned char) (spinbox_sy_lfr_s1_bp_p1->value() ); | ||||
packetToSend->GetCRCAsTwoBytes((unsigned char*) &packet, crcAsTwoBytes, | ||||
PACKET_LENGTH_TC_LFR_LOAD_SBM1_PAR + CCSDS_TC_TM_PACKET_OFFSET - 2); | ||||
packet.crc[0] = crcAsTwoBytes[0]; | ||||
packet.crc[1] = crcAsTwoBytes[1]; | ||||
emit WriteSPWSig((char*) &packet, PACKET_LENGTH_TC_LFR_LOAD_SBM1_PAR + CCSDS_TC_TM_PACKET_OFFSET, | ||||
CCSDS_NODE_ADDRESS, CCSDS_USER_APP); | ||||
} | ||||
void ParameterDump::sendLoadSBM2() | ||||
{ | ||||
Packet_TC_LFR_LOAD_BURST_SBM1_SBM2_PAR_t packet; | ||||
unsigned char crcAsTwoBytes[2]; | ||||
packet.packetID[0] = (unsigned char) (TC_LFR_PACKET_ID >> 8); | ||||
packet.packetID[1] = (unsigned char) (TC_LFR_PACKET_ID ); | ||||
packet.packetSequenceControl[0] = (unsigned char) (TC_LFR_PACKET_SEQUENCE_CONTROL >> 8); | ||||
packet.packetSequenceControl[1] = (unsigned char) (TC_LFR_PACKET_SEQUENCE_CONTROL ); | ||||
packet.packetLength[0] = (unsigned char) (PACKET_LENGTH_TC_LFR_LOAD_SBM2_PAR >> 8); | ||||
packet.packetLength[1] = (unsigned char) (PACKET_LENGTH_TC_LFR_LOAD_SBM2_PAR ); | ||||
packet.ccsdsSecHeaderFlag_pusVersion_ack = TC_LFR_DATA_FIELD_HEADER0; | ||||
packet.serviceType = TC_TYPE_DEFAULT; | ||||
packet.serviceSubType = TC_SUBTYPE_LOAD_SBM2_PAR; | ||||
packet.sourceID = SID_DEFAULT; | ||||
packet.sy_lfr_bp_p0 = (unsigned char) (spinbox_sy_lfr_s2_bp_p0->value() ); | ||||
packet.sy_lfr_bp_p1 = (unsigned char) (spinbox_sy_lfr_s2_bp_p1->value() ); | ||||
packetToSend->GetCRCAsTwoBytes((unsigned char*) &packet, crcAsTwoBytes, | ||||
PACKET_LENGTH_TC_LFR_LOAD_SBM2_PAR + CCSDS_TC_TM_PACKET_OFFSET - 2); | ||||
packet.crc[0] = crcAsTwoBytes[0]; | ||||
packet.crc[1] = crcAsTwoBytes[1]; | ||||
emit WriteSPWSig((char*) &packet, PACKET_LENGTH_TC_LFR_LOAD_SBM2_PAR + CCSDS_TC_TM_PACKET_OFFSET, | ||||
CCSDS_NODE_ADDRESS, CCSDS_USER_APP); | ||||
} | ||||
void ParameterDump::actionsSetEnabled(bool state) | ||||
{ | ||||
button_parameterDump->setEnabled(state); | ||||
button_loadCommon->setEnabled(state); | ||||
button_loadNormal->setEnabled(state); | ||||
button_loadBurst->setEnabled(state); | ||||
button_loadSBM1->setEnabled(state); | ||||
button_loadSBM2->setEnabled(state); | ||||
} | ||||
void ParameterDump::GetCRCAsTwoBytes(unsigned char* data, unsigned char* crcAsTwoBytes, unsigned int sizeOfData) | ||||
{ | ||||
packetToSend->GetCRCAsTwoBytes( data, crcAsTwoBytes, sizeOfData ); | ||||
} | ||||