Merge branch 'master' into mueller/master

This commit is contained in:
Robin Müller 2021-07-13 08:59:40 +02:00
commit 8189435b94
20 changed files with 55 additions and 45 deletions

View File

@ -43,12 +43,12 @@ endif()
set(FSFW_OSAL_DEFINITION FSFW_HOST)
if(${OS_FSFW} STREQUAL host)
if(OS_FSFW MATCHES host)
set(OS_FSFW_NAME "Host")
elseif(${OS_FSFW} STREQUAL linux)
elseif(OS_FSFW MATCHES linux)
set(OS_FSFW_NAME "Linux")
set(FSFW_OSAL_DEFINITION FSFW_LINUX)
elseif(${OS_FSFW} STREQUAL freertos)
elseif(OS_FSFW MATCHES freertos)
set(OS_FSFW_NAME "FreeRTOS")
set(FSFW_OSAL_DEFINITION FSFW_FREERTOS)
target_link_libraries(${LIB_FSFW_NAME} PRIVATE

View File

@ -4,8 +4,8 @@
#include "../../returnvalues/HasReturnvaluesIF.h"
#include "../../tasks/SemaphoreIF.h"
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include "FreeRTOS.h"
#include "task.h"
#if (tskKERNEL_VERSION_MAJOR == 8 && tskKERNEL_VERSION_MINOR > 2) || \
tskKERNEL_VERSION_MAJOR > 8

View File

@ -4,8 +4,8 @@
#include "../../returnvalues/HasReturnvaluesIF.h"
#include "../../tasks/SemaphoreIF.h"
#include <freertos/FreeRTOS.h>
#include <freertos/semphr.h>
#include "FreeRTOS.h"
#include "semphr.h"
/**
* @brief OS Tool to achieve synchronization of between tasks or between

View File

@ -22,10 +22,11 @@ target_sources(${LIB_FSFW_NAME}
# FreeRTOS as a static library and set LIB_OS_NAME to the target name of the
# library.
if(NOT LIB_OS_NAME)
message(FATAL_ERROR
"FreeRTOS needs to be linked as a target and "
"LIB_OS_NAME needs to be set to the target"
message(STATUS
"LIB_OS_NAME is empty. Make sure to include the FreeRTOS header path properly."
)
else()
target_link_libraries(${LIB_FSFW_NAME} PRIVATE
${LIB_OS_NAME}
)
endif()
target_link_libraries(${LIB_FSWFW_NAME} ${LIB_OS_NAME})

View File

@ -3,8 +3,8 @@
#include "../../timemanager/Clock.h"
#include "../../globalfunctions/timevalOperations.h"
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include "FreeRTOS.h"
#include "task.h"
#include <stdlib.h>
#include <time.h>

View File

@ -4,8 +4,8 @@
#include "CountingSemaphUsingTask.h"
#include "../../tasks/SemaphoreIF.h"
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include "FreeRTOS.h"
#include "task.h"
#if (tskKERNEL_VERSION_MAJOR == 8 && tskKERNEL_VERSION_MINOR > 2) || \
tskKERNEL_VERSION_MAJOR > 8

View File

@ -3,7 +3,8 @@
#include "../../serviceinterface/ServiceInterfaceStream.h"
#include <freertos/semphr.h>
#include "FreeRTOS.h"
#include "semphr.h"
// Make sure #define configUSE_COUNTING_SEMAPHORES 1 is set in
// free FreeRTOSConfig.h file.

View File

@ -6,8 +6,8 @@
#include "../../tasks/FixedTimeslotTaskIF.h"
#include "../../tasks/Typedef.h"
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include "FreeRTOS.h"
#include "task.h"
class FixedTimeslotTask: public FixedTimeslotTaskIF, public FreeRTOSTaskIF {
public:

View File

@ -1,8 +1,8 @@
#ifndef FSFW_OSAL_FREERTOS_FREERTOSTASKIF_H_
#define FSFW_OSAL_FREERTOS_FREERTOSTASKIF_H_
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include "FreeRTOS.h"
#include "task.h"
class FreeRTOSTaskIF {
public:

View File

@ -6,10 +6,11 @@
#include "../../internalError/InternalErrorReporterIF.h"
#include "../../ipc/MessageQueueIF.h"
#include "../../ipc/MessageQueueMessageIF.h"
#include "../../ipc/MessageQueueMessage.h"
#include "FreeRTOS.h"
#include "queue.h"
#include <freertos/FreeRTOS.h>
#include <freertos/queue.h>
#include <fsfw/ipc/MessageQueueMessage.h>
/**
* @brief This class manages sending and receiving of

View File

@ -3,8 +3,8 @@
#include "../../ipc/MutexIF.h"
#include <freertos/FreeRTOS.h>
#include <freertos/semphr.h>
#include "FreeRTOS.h"
#include "semphr.h"
/**
* @brief OS component to implement MUTual EXclusion

View File

@ -6,8 +6,8 @@
#include "../../tasks/PeriodicTaskIF.h"
#include "../../tasks/Typedef.h"
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include "FreeRTOS.h"
#include "task.h"
#include <vector>

View File

@ -5,8 +5,8 @@
#include "../../ipc/messageQueueDefinitions.h"
#include "../../ipc/MessageQueueIF.h"
#include "freertos/FreeRTOS.h"
#include "freertos/queue.h"
#include "FreeRTOS.h"
#include "queue.h"
#include <map>

View File

@ -1,9 +1,10 @@
#include "../../osal/FreeRTOS/BinarySemaphore.h"
#include "../../osal/FreeRTOS/BinSemaphUsingTask.h"
#include "../../osal/FreeRTOS/CountingSemaphore.h"
#include "../../osal/FreeRTOS/CountingSemaphUsingTask.h"
#include "BinarySemaphore.h"
#include "BinSemaphUsingTask.h"
#include "CountingSemaphore.h"
#include "CountingSemaphUsingTask.h"
#include "../../tasks/SemaphoreFactory.h"
#include "../../serviceinterface/ServiceInterfaceStream.h"
#include "../../serviceinterface/ServiceInterface.h"
SemaphoreFactory* SemaphoreFactory::factoryInstance = nullptr;

View File

@ -1,10 +1,10 @@
#ifndef FRAMEWORK_OSAL_FREERTOS_TASKMANAGEMENT_H_
#define FRAMEWORK_OSAL_FREERTOS_TASKMANAGEMENT_H_
#ifndef FSFW_OSAL_FREERTOS_TASKMANAGEMENT_H_
#define FSFW_OSAL_FREERTOS_TASKMANAGEMENT_H_
#include "../../returnvalues/HasReturnvaluesIF.h"
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include "FreeRTOS.h"
#include "task.h"
#include <cstdint>

View File

@ -1,6 +1,6 @@
#include "Timekeeper.h"
#include <FreeRTOSConfig.h>
#include "FreeRTOSConfig.h"
Timekeeper * Timekeeper::myinstance = nullptr;

View File

@ -3,8 +3,8 @@
#include "../../timemanager/Clock.h"
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include "FreeRTOS.h"
#include "task.h"
/**

View File

@ -32,7 +32,7 @@ ReturnValue_t PeriodicPosixTask::addComponent(object_id_t object) {
sif::error << "PeriodicTask::addComponent: Invalid object. Make sure"
<< " it implements ExecutableObjectIF!" << std::endl;
#else
sif::printError("PeriodicTask::addComponent: Invalid object. Make sure it"
sif::printError("PeriodicTask::addComponent: Invalid object. Make sure it "
"implements ExecutableObjectIF!\n");
#endif
return HasReturnvaluesIF::RETURN_FAILED;

View File

@ -8,7 +8,7 @@ TcPacketPus::TcPacketPus(const uint8_t *setData): TcPacketBase(setData) {
}
void TcPacketPus::initializeTcPacket(uint16_t apid, uint16_t sequenceCount,
uint8_t ack, uint8_t service, uint8_t subservice) {
uint8_t ack, uint8_t service, uint8_t subservice, uint16_t sourceId) {
initSpacePacketHeader(true, true, apid, sequenceCount);
std::memset(&tcData->dataField, 0, sizeof(tcData->dataField));
setPacketDataLength(sizeof(PUSTcDataFieldHeader) + CRC_SIZE - 1);
@ -18,6 +18,12 @@ void TcPacketPus::initializeTcPacket(uint16_t apid, uint16_t sequenceCount,
tcData->dataField.versionTypeAck |= (ack & 0x0F);
tcData->dataField.serviceType = service;
tcData->dataField.serviceSubtype = subservice;
#if FSFW_USE_PUS_C_TELECOMMANDS == 1
tcData->dataField.sourceIdH = (sourceId >> 8) | 0xff;
tcData->dataField.sourceIdL = sourceId & 0xff;
#else
tcData->dataField.sourceId = sourceId;
#endif
}
uint8_t TcPacketPus::getService() const {

View File

@ -75,7 +75,7 @@ protected:
* @param subservice PUS Subservice
*/
void initializeTcPacket(uint16_t apid, uint16_t sequenceCount, uint8_t ack,
uint8_t service, uint8_t subservice);
uint8_t service, uint8_t subservice, uint16_t sourceId = 0);
/**
* A pointer to a structure which defines the data structure of