diff --git a/osal/FreeRTOS/BinarySemaphore.cpp b/osal/FreeRTOS/BinarySemaphore.cpp index e2cddacc..b5f8e6c6 100644 --- a/osal/FreeRTOS/BinarySemaphore.cpp +++ b/osal/FreeRTOS/BinarySemaphore.cpp @@ -7,8 +7,11 @@ #include #include + +extern "C" { #include "portmacro.h" #include "task.h" +} BinarySemaphore::BinarySemaphore() { xSemaphoreCreateBinary(handle); diff --git a/osal/FreeRTOS/BinarySemaphore.h b/osal/FreeRTOS/BinarySemaphore.h index 373e26bf..2203c923 100644 --- a/osal/FreeRTOS/BinarySemaphore.h +++ b/osal/FreeRTOS/BinarySemaphore.h @@ -7,8 +7,12 @@ #define FRAMEWORK_OSAL_FREERTOS_BINARYSEMPAHORE_H_ #include -#include + +extern "C" { +#include "FreeRTOS.h" #include "semphr.h" +} + /** * @brief OS Tool to achieve synchronization of between tasks or between task and ISR diff --git a/osal/FreeRTOS/Mutex.h b/osal/FreeRTOS/Mutex.h index 2703df4e..604511b5 100644 --- a/osal/FreeRTOS/Mutex.h +++ b/osal/FreeRTOS/Mutex.h @@ -19,8 +19,8 @@ class Mutex : public MutexIF { public: Mutex(); ~Mutex(); - ReturnValue_t lockMutex(uint32_t timeoutMs); - ReturnValue_t unlockMutex(); + ReturnValue_t lockMutex(uint32_t timeoutMs) override; + ReturnValue_t unlockMutex() override; private: SemaphoreHandle_t handle; };