37 lines
907 B
C++
37 lines
907 B
C++
#ifndef PINTYPEOUT_H
|
|
#define PINTYPEOUT_H
|
|
|
|
#include <Arduino.h>
|
|
#include "DeviceBase.h"
|
|
|
|
class PinTypeOut : public DeviceBase
|
|
{
|
|
private:
|
|
uint8_t _pinNumber;
|
|
|
|
unsigned long _debounceTime;
|
|
unsigned long lastStateChangeTime;
|
|
|
|
|
|
public:
|
|
const char *description;
|
|
|
|
PinTypeOut(String id, uint8_t pinNumber, unsigned long debounceTime, const char *description)
|
|
: DeviceBase(id), _pinNumber(pinNumber), _debounceTime(debounceTime), lastStateChangeTime(0), description(description)
|
|
{
|
|
pinMode(pinNumber, OUTPUT);
|
|
}
|
|
|
|
PinTypeOut(String id, uint8_t pinNumber, const char *description)
|
|
: DeviceBase(id), _pinNumber(pinNumber),_debounceTime(0), lastStateChangeTime(0), description(description)
|
|
{
|
|
pinMode(pinNumber, OUTPUT);
|
|
}
|
|
|
|
void setOutputSignalToHigh();
|
|
void setOutputSignalToLow();
|
|
|
|
bool IsPinOn();
|
|
};
|
|
|
|
#endif // PinTypeOut_H
|