Merge branch 'development' into gaisser_countdown_timer

This commit is contained in:
Robin Müller 2021-10-02 15:50:49 +02:00
commit 4e1c52f465
7 changed files with 19 additions and 10 deletions

View File

@ -2,7 +2,6 @@
#define MISSION_DEVICES_MGMRM3100HANDLER_H_ #define MISSION_DEVICES_MGMRM3100HANDLER_H_
#include "fsfw/FSFW.h" #include "fsfw/FSFW.h"
#include "devices/powerSwitcherList.h"
#include "devicedefinitions/MgmRM3100HandlerDefs.h" #include "devicedefinitions/MgmRM3100HandlerDefs.h"
#include "fsfw/devicehandlers/DeviceHandlerBase.h" #include "fsfw/devicehandlers/DeviceHandlerBase.h"

View File

@ -49,7 +49,7 @@ static constexpr uint8_t TMRC_DEFAULT_VALUE = TMRC_DEFAULT_37HZ_VALUE;
static constexpr uint8_t MEASUREMENT_REG_START = 0x24; static constexpr uint8_t MEASUREMENT_REG_START = 0x24;
static constexpr uint8_t BIST_REGISTER = 0x33; static constexpr uint8_t BIST_REGISTER = 0x33;
static constexpr uint8_t DATA_READY_VAL = 0b1000'0000; static constexpr uint8_t DATA_READY_VAL = 0b10000000;
static constexpr uint8_t STATUS_REGISTER = 0x34; static constexpr uint8_t STATUS_REGISTER = 0x34;
static constexpr uint8_t REVID_REGISTER = 0x36; static constexpr uint8_t REVID_REGISTER = 0x36;

View File

@ -72,10 +72,12 @@ enum: uint8_t {
PUS_SERVICE_3, //PUS3 PUS_SERVICE_3, //PUS3
PUS_SERVICE_9, //PUS9 PUS_SERVICE_9, //PUS9
FILE_SYSTEM, //FILS FILE_SYSTEM, //FILS
LINUX_OSAL, //UXOS
HAL_SPI, //HSPI HAL_SPI, //HSPI
HAL_UART, //HURT HAL_UART, //HURT
HAL_I2C, //HI2C HAL_I2C, //HI2C
HAL_GPIO, //HGIO HAL_GPIO, //HGIO
FIXED_SLOT_TASK_IF, //FTIF
MGM_LIS3MDL, //MGMLIS3 MGM_LIS3MDL, //MGMLIS3
MGM_RM3100, //MGMRM3100 MGM_RM3100, //MGMRM3100
FW_CLASS_ID_COUNT // [EXPORT] : [END] FW_CLASS_ID_COUNT // [EXPORT] : [END]

View File

@ -1,4 +1,5 @@
#include "fsfw/tasks/FixedSlotSequence.h" #include "fsfw/tasks/FixedSlotSequence.h"
#include "fsfw/tasks/FixedTimeslotTaskIF.h"
#include "fsfw/serviceinterface/ServiceInterface.h" #include "fsfw/serviceinterface/ServiceInterface.h"
#include <cstdlib> #include <cstdlib>
@ -92,10 +93,9 @@ void FixedSlotSequence::addSlot(object_id_t componentId, uint32_t slotTimeMs,
ReturnValue_t FixedSlotSequence::checkSequence() const { ReturnValue_t FixedSlotSequence::checkSequence() const {
if(slotList.empty()) { if(slotList.empty()) {
#if FSFW_CPP_OSTREAM_ENABLED == 1 #if FSFW_CPP_OSTREAM_ENABLED == 1
sif::error << "FixedSlotSequence::checkSequence:" sif::warning << "FixedSlotSequence::checkSequence: Slot list is empty!" << std::endl;
<< " Slot list is empty!" << std::endl;
#endif #endif
return HasReturnvaluesIF::RETURN_FAILED; return FixedTimeslotTaskIF::SLOT_LIST_EMPTY;
} }
if(customCheckFunction != nullptr) { if(customCheckFunction != nullptr) {

View File

@ -2,7 +2,7 @@
#define FSFW_TASKS_FIXEDSLOTSEQUENCE_H_ #define FSFW_TASKS_FIXEDSLOTSEQUENCE_H_
#include "FixedSequenceSlot.h" #include "FixedSequenceSlot.h"
#include "../objectmanager/SystemObject.h" #include "fsfw/objectmanager/SystemObject.h"
#include <set> #include <set>
@ -136,6 +136,7 @@ public:
* @details * @details
* Checks if timing is ok (must be ascending) and if all handlers were found. * Checks if timing is ok (must be ascending) and if all handlers were found.
* @return * @return
* - SLOT_LIST_EMPTY if the slot list is empty
*/ */
ReturnValue_t checkSequence() const; ReturnValue_t checkSequence() const;
@ -147,6 +148,7 @@ public:
* The general check will be continued for now if the custom check function * The general check will be continued for now if the custom check function
* fails but a diagnostic debug output will be given. * fails but a diagnostic debug output will be given.
* @param customCheckFunction * @param customCheckFunction
*
*/ */
void addCustomCheck(ReturnValue_t (*customCheckFunction)(const SlotList &)); void addCustomCheck(ReturnValue_t (*customCheckFunction)(const SlotList &));

View File

@ -2,7 +2,8 @@
#define FRAMEWORK_TASKS_FIXEDTIMESLOTTASKIF_H_ #define FRAMEWORK_TASKS_FIXEDTIMESLOTTASKIF_H_
#include "PeriodicTaskIF.h" #include "PeriodicTaskIF.h"
#include "../objectmanager/ObjectManagerIF.h" #include "fsfw/objectmanager/ObjectManagerIF.h"
#include "fsfw/returnvalues/FwClassIds.h"
/** /**
* @brief Following the same principle as the base class IF. * @brief Following the same principle as the base class IF.
@ -12,6 +13,8 @@ class FixedTimeslotTaskIF : public PeriodicTaskIF {
public: public:
virtual ~FixedTimeslotTaskIF() {} virtual ~FixedTimeslotTaskIF() {}
static constexpr ReturnValue_t SLOT_LIST_EMPTY = HasReturnvaluesIF::makeReturnCode(
CLASS_ID::FIXED_SLOT_TASK_IF, 0);
/** /**
* Add an object with a slot time and the execution step to the task. * Add an object with a slot time and the execution step to the task.
* The execution step will be passed to the object (e.g. as an operation * The execution step will be passed to the object (e.g. as an operation

View File

@ -1,5 +1,8 @@
#ifndef FRAMEWORK_TASKS_TYPEDEF_H_ #ifndef FSFW_TASKS_TYPEDEF_H_
#define FRAMEWORK_TASKS_TYPEDEF_H_ #define FSFW_TASKS_TYPEDEF_H_
#include <cstdint>
#include <cstddef>
typedef const char* TaskName; typedef const char* TaskName;
typedef uint32_t TaskPriority; typedef uint32_t TaskPriority;
@ -7,4 +10,4 @@ typedef size_t TaskStackSize;
typedef double TaskPeriod; typedef double TaskPeriod;
typedef void (*TaskDeadlineMissedFunction)(); typedef void (*TaskDeadlineMissedFunction)();
#endif /* FRAMEWORK_TASKS_TYPEDEF_H_ */ #endif /* FSFW_TASKS_TYPEDEF_H_ */