Merge remote-tracking branch 'origin/develop' into rework_acs_board_polling
This commit is contained in:
@ -166,6 +166,7 @@ void ComSubsystem::handleBitLockEvent() {
|
||||
rememberBitLock = true;
|
||||
return;
|
||||
}
|
||||
triggerEvent(BIT_LOCK_TX_ON);
|
||||
startRxAndTxLowRateSeq();
|
||||
}
|
||||
|
||||
@ -183,6 +184,7 @@ void ComSubsystem::startRxAndTxLowRateSeq() {
|
||||
|
||||
void ComSubsystem::checkTransmitterCountdown() {
|
||||
if (transmitterCountdown.hasTimedOut()) {
|
||||
triggerEvent(TX_TIMER_EXPIRED, transmitterTimeout);
|
||||
startTransition(com::Submode::RX_ONLY, SUBMODE_NONE);
|
||||
countdownActive = false;
|
||||
}
|
||||
|
@ -5,11 +5,21 @@
|
||||
#include <fsfw/parameters/HasParametersIF.h>
|
||||
#include <fsfw/parameters/ParameterHelper.h>
|
||||
#include <fsfw/subsystem/Subsystem.h>
|
||||
#include <common/config/eive/eventSubsystemIds.h>
|
||||
|
||||
#include "mission/comDefs.h"
|
||||
|
||||
class ComSubsystem : public Subsystem, public ReceivesParameterMessagesIF {
|
||||
public:
|
||||
|
||||
static const uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::COM_SUBSYSTEM;
|
||||
|
||||
//! [EXPORT] : [COMMENT] The transmit timer to protect the Syrlinks expired
|
||||
//! P1: The current timer value
|
||||
static const Event TX_TIMER_EXPIRED = MAKE_EVENT(1, severity::INFO);
|
||||
//! [EXPORT] : [COMMENT] Transmitter will be turned on due to detection of bitlock
|
||||
static const Event BIT_LOCK_TX_ON = MAKE_EVENT(2, severity::INFO);
|
||||
|
||||
/**
|
||||
* @brief Constructor
|
||||
*
|
||||
@ -17,8 +27,7 @@ class ComSubsystem : public Subsystem, public ReceivesParameterMessagesIF {
|
||||
* @param maxNumberOfSequences
|
||||
* @param maxNumberOfTables
|
||||
* @param transmitterTimeout Maximum time the transmitter of the syrlinks
|
||||
* will
|
||||
* be enabled
|
||||
* will be enabled
|
||||
*/
|
||||
ComSubsystem(object_id_t setObjectId, uint32_t maxNumberOfSequences, uint32_t maxNumberOfTables,
|
||||
uint32_t transmitterTimeout);
|
||||
@ -55,6 +64,7 @@ class ComSubsystem : public Subsystem, public ReceivesParameterMessagesIF {
|
||||
bool isTxMode(Mode_t mode);
|
||||
|
||||
uint8_t datarateCfg = static_cast<uint8_t>(com::Datarate::LOW_RATE_MODULATION_BPSK);
|
||||
|
||||
// Maximum time after which the transmitter will be turned of. This is a
|
||||
// protection mechanism due prevent the syrlinks from overheating
|
||||
uint32_t transmitterTimeout = 0;
|
||||
|
Reference in New Issue
Block a user