adventsfenster/include/relais.h

62 lines
905 B
C++

#ifndef __relais_H__
#define __relais_H__
#include <Arduino.h>
class relais
{
private:
size_t _ctrl_pin;
bool _relais_on = false;
public:
relais(size_t ctrl_pin);
~relais();
void on();
void off();
void toggle();
bool is_on();
};
relais::relais(size_t ctrl_pin)
{
_ctrl_pin = ctrl_pin;
_relais_on = false;
pinMode(_ctrl_pin, OUTPUT);
}
relais::~relais()
{
}
void relais::on()
{
digitalWrite(_ctrl_pin, HIGH);
_relais_on = true;
}
void relais::off()
{
digitalWrite(_ctrl_pin, LOW);
_relais_on = false;
}
void relais::toggle()
{
if(true == _relais_on)
{
digitalWrite(_ctrl_pin, LOW);
_relais_on = false;
}
else
{
digitalWrite(_ctrl_pin, HIGH);
_relais_on = true;
}
}
bool relais::is_on()
{
return(_relais_on);
}
#endif