continued com ss
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
Some checks failed
EIVE/eive-obsw/pipeline/head There was a failure building this commit
This commit is contained in:
parent
5a71a400be
commit
162253e9d8
@ -43,6 +43,7 @@ enum commonObjects: uint32_t {
|
|||||||
PLOC_MPSOC_HANDLER = 0x44330015,
|
PLOC_MPSOC_HANDLER = 0x44330015,
|
||||||
PLOC_SUPERVISOR_HANDLER = 0x44330016,
|
PLOC_SUPERVISOR_HANDLER = 0x44330016,
|
||||||
PLOC_SUPERVISOR_HELPER = 0x44330017,
|
PLOC_SUPERVISOR_HELPER = 0x44330017,
|
||||||
|
SYRLINKS_HK_HANDLER = 0x445300A3,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Not yet specified which pt1000 will measure which device/location in the satellite.
|
* Not yet specified which pt1000 will measure which device/location in the satellite.
|
||||||
|
2
fsfw
2
fsfw
@ -1 +1 @@
|
|||||||
Subproject commit 1c4ea6dd0dbc6e93086c28d8e0ce3bed5be0c73c
|
Subproject commit 3225a8e350efbc3ff2e8d9dd9757de52be90d4fd
|
@ -53,7 +53,7 @@ enum sourceObjects : uint32_t {
|
|||||||
/* Custom device handler */
|
/* Custom device handler */
|
||||||
PCDU_HANDLER = 0x442000A1,
|
PCDU_HANDLER = 0x442000A1,
|
||||||
SOLAR_ARRAY_DEPL_HANDLER = 0x444100A2,
|
SOLAR_ARRAY_DEPL_HANDLER = 0x444100A2,
|
||||||
SYRLINKS_HK_HANDLER = 0x445300A3,
|
|
||||||
HEATER_HANDLER = 0x444100A4,
|
HEATER_HANDLER = 0x444100A4,
|
||||||
RAD_SENSOR = 0x443200A5,
|
RAD_SENSOR = 0x443200A5,
|
||||||
|
|
||||||
|
@ -6,6 +6,7 @@
|
|||||||
#include <fsfw/returnvalues/HasReturnvaluesIF.h>
|
#include <fsfw/returnvalues/HasReturnvaluesIF.h>
|
||||||
#include <fsfw/subsystem/Subsystem.h>
|
#include <fsfw/subsystem/Subsystem.h>
|
||||||
|
|
||||||
|
#include "mission/tmtc/comDefinitions.h"
|
||||||
#include "util.h"
|
#include "util.h"
|
||||||
|
|
||||||
const auto check = subsystem::checkInsert;
|
const auto check = subsystem::checkInsert;
|
||||||
@ -14,16 +15,25 @@ static const auto OFF = HasModesIF::MODE_OFF;
|
|||||||
static const auto ON = HasModesIF::MODE_ON;
|
static const auto ON = HasModesIF::MODE_ON;
|
||||||
static const auto NML = DeviceHandlerIF::MODE_NORMAL;
|
static const auto NML = DeviceHandlerIF::MODE_NORMAL;
|
||||||
|
|
||||||
|
auto COM_SEQUENCE_TX_OFF = std::make_pair(NML << 24, FixedArrayList<ModeListEntry, 2>());
|
||||||
|
auto COM_TABLE_TX_OFF_TGT = std::make_pair((NML << 24) | 1, FixedArrayList<ModeListEntry, 0>());
|
||||||
|
auto COM_TABLE_TX_OFF_TRANS = std::make_pair((NML << 24) | 2, FixedArrayList<ModeListEntry, 6>());
|
||||||
|
|
||||||
|
auto COM_SEQUENCE_TX_ON = std::make_pair(NML << 24, FixedArrayList<ModeListEntry, 2>());
|
||||||
|
auto COM_TABLE_TX_ON_TGT = std::make_pair((NML << 24) | 1, FixedArrayList<ModeListEntry, 0>());
|
||||||
|
auto COM_TABLE_TX_ON_TRANS = std::make_pair((NML << 24) | 2, FixedArrayList<ModeListEntry, 6>());
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
void buildTxOffSequence(Subsystem* ss, ModeListEntry& eh);
|
void buildTxOffSequence(Subsystem* ss, ModeListEntry& eh);
|
||||||
void buildTxOnSequence(Subsystem* ss, ModeListEntry& eh);
|
void buildTxOnSequence(Subsystem* ss, ModeListEntry& eh);
|
||||||
}
|
} // namespace
|
||||||
|
|
||||||
void satsystem::com::init() {
|
void satsystem::com::init() {
|
||||||
ModeListEntry entry;
|
ModeListEntry entry;
|
||||||
Subsystem* comSubsystem = new Subsystem(objects::COM_SUBSYSTEM, objects::EIVE_SYSTEM, 12, 24);
|
Subsystem* comSubsystem = new Subsystem(objects::COM_SUBSYSTEM, objects::EIVE_SYSTEM, 12, 24);
|
||||||
buildTxOffSequence(comSubsystem, entry);
|
buildTxOffSequence(comSubsystem, entry);
|
||||||
buildTxOnSequence(comSubsystem, entry);
|
buildTxOnSequence(comSubsystem, entry);
|
||||||
|
comSubsystem->setInitialMode(NML, com::Submodes::NONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
@ -46,6 +56,13 @@ void buildTxOffSequence(Subsystem* ss, ModeListEntry& eh) {
|
|||||||
eh.setCheckSuccess(checkSuccess);
|
eh.setCheckSuccess(checkSuccess);
|
||||||
check(sequence.insert(eh), ctxc);
|
check(sequence.insert(eh), ctxc);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Build TX OFF table
|
||||||
|
iht(objects::SYRLINKS_HK_HANDLER, NML, com::NONE, COM_TABLE_TX_OFF_TGT.second);
|
||||||
|
check(ss->addTable(TableEntry(COM_SEQUENCE_TX_OFF.first, &COM_TABLE_TX_OFF_TGT.second)), ctxc);
|
||||||
|
// Build TX OFF transition
|
||||||
|
iht(objects::SYRLINKS_HK_HANDLER, NML, com::NONE, COM_TABLE_TX_OFF_TRANS.second);
|
||||||
|
check(ss->addTable(TableEntry(COM_SEQUENCE_TX_OFF.first, &COM_TABLE_TX_OFF_TRANS.second)), ctxc);
|
||||||
}
|
}
|
||||||
|
|
||||||
void buildTxOnSequence(Subsystem* ss, ModeListEntry& eh) {
|
void buildTxOnSequence(Subsystem* ss, ModeListEntry& eh) {
|
||||||
@ -68,4 +85,4 @@ void buildTxOnSequence(Subsystem* ss, ModeListEntry& eh) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
} // namespace
|
||||||
|
Loading…
x
Reference in New Issue
Block a user