COM Subsystem #358

Merged
muellerr merged 19 commits from com_subsystem into develop 2023-01-28 14:58:08 +01:00
38 changed files with 563 additions and 99 deletions
Showing only changes of commit c63ca66f68 - Show all commits

View File

@ -1,6 +1,7 @@
#include "scheduling.h" #include "scheduling.h"
#include <fsfw/devicehandlers/DeviceCommunicationIF.h> #include <fsfw/devicehandlers/DeviceCommunicationIF.h>
#include <fsfw/subsystem/Subsystem.h>
#include <linux/scheduling.h> #include <linux/scheduling.h>
#include <iostream> #include <iostream>

2
fsfw

Submodule fsfw updated: da12495335...226818886f

View File

@ -30,3 +30,19 @@ ReturnValue_t ComSubsystem::getParameter(uint8_t domainId, uint8_t uniqueIdentif
} }
return returnvalue::OK; return returnvalue::OK;
} }
ReturnValue_t ComSubsystem::handleCommandMessage(CommandMessage *message) {
ReturnValue_t result = paramHelper.handleParameterMessage(message);
if (result == returnvalue::OK) {
return result;
}
return Subsystem::handleCommandMessage(message);
}
ReturnValue_t ComSubsystem::initialize() {
ReturnValue_t result = paramHelper.initialize();
if (result != returnvalue::OK) {
return result;
}
return Subsystem::initialize();
}

View File

@ -10,6 +10,7 @@
class ComSubsystem : public Subsystem, public ReceivesParameterMessagesIF { class ComSubsystem : public Subsystem, public ReceivesParameterMessagesIF {
public: public:
ComSubsystem(object_id_t setObjectId, uint32_t maxNumberOfSequences, uint32_t maxNumberOfTables); ComSubsystem(object_id_t setObjectId, uint32_t maxNumberOfSequences, uint32_t maxNumberOfTables);
virtual ~ComSubsystem() = default;
MessageQueueId_t getCommandQueue() const override; MessageQueueId_t getCommandQueue() const override;
ReturnValue_t getParameter(uint8_t domainId, uint8_t uniqueIdentifier, ReturnValue_t getParameter(uint8_t domainId, uint8_t uniqueIdentifier,
@ -17,6 +18,10 @@ class ComSubsystem : public Subsystem, public ReceivesParameterMessagesIF {
uint16_t startAtIndex) override; uint16_t startAtIndex) override;
private: private:
ReturnValue_t handleCommandMessage(CommandMessage *message) override;
ReturnValue_t initialize() override;
uint8_t datarateCfg = static_cast<uint8_t>(com::Datarate::LOW_RATE_MODULATION_BPSK); uint8_t datarateCfg = static_cast<uint8_t>(com::Datarate::LOW_RATE_MODULATION_BPSK);
ParameterHelper paramHelper; ParameterHelper paramHelper;
}; };

View File

@ -11,7 +11,7 @@
const auto check = subsystem::checkInsert; const auto check = subsystem::checkInsert;
Subsystem satsystem::com::SUBSYSTEM = Subsystem(objects::COM_SUBSYSTEM, 12, 24); ComSubsystem satsystem::com::SUBSYSTEM = ComSubsystem(objects::COM_SUBSYSTEM, 12, 24);
static const auto OFF = HasModesIF::MODE_OFF; static const auto OFF = HasModesIF::MODE_OFF;
static const auto ON = HasModesIF::MODE_ON; static const auto ON = HasModesIF::MODE_ON;

View File

@ -1,12 +1,12 @@
#ifndef MISSION_SYSTEM_TREE_COMMODETREE_H_ #ifndef MISSION_SYSTEM_TREE_COMMODETREE_H_
#define MISSION_SYSTEM_TREE_COMMODETREE_H_ #define MISSION_SYSTEM_TREE_COMMODETREE_H_
#include <fsfw/subsystem/Subsystem.h> #include <mission/system/objects/ComSubsystem.h>
namespace satsystem { namespace satsystem {
namespace com { namespace com {
extern Subsystem SUBSYSTEM; extern ComSubsystem SUBSYSTEM;
void init(); void init();
} // namespace com } // namespace com

2
tmtc

Submodule tmtc updated: 39a9497494...407163397d