SensorLib
0.5.0
Multi-platform sensor driver library for Arduino, PlatformIO, and ESP-IDF
Loading...
Searching...
No Matches
SensorArduinoFreeRTOS_Lock.hpp
Go to the documentation of this file.
1
30
#pragma once
31
32
#include "../SensorSmartLock.hpp"
33
34
#if defined(ARDUINO_ARCH_ESP32)
35
36
#include "freertos/FreeRTOS.h"
37
#include "freertos/semphr.h"
38
39
class
FreeRTOSLock :
public
SensorLockBase
40
{
41
private
:
42
SemaphoreHandle_t mutex;
43
public
:
44
FreeRTOSLock()
45
{
46
mutex = xSemaphoreCreateMutex();
47
}
48
~FreeRTOSLock()
49
{
50
vSemaphoreDelete(mutex);
51
}
52
void
lock
()
override
53
{
54
xSemaphoreTake(mutex, portMAX_DELAY);
55
}
56
void
unlock
()
override
57
{
58
xSemaphoreGive(mutex);
59
}
60
};
61
62
using
HalLock = FreeRTOSLock;
63
64
#endif
/*ARDUINO_ARCH_ESP32*/
SensorLockBase
Definition
SensorLockBase.hpp:33
SensorLockBase::lock
virtual void lock()=0
SensorLockBase::unlock
virtual void unlock()=0
src
platform
arduino
SensorArduinoFreeRTOS_Lock.hpp
Generated by
1.9.8