semf
digitalout.h
Go to the documentation of this file.
1
10#ifndef SEMF_OUTPUT_DIGITALOUT_H_
11#define SEMF_OUTPUT_DIGITALOUT_H_
12
14#include <semf/system/gpio.h>
15
16namespace semf
17{
22{
23public:
29 explicit DigitalOut(Gpio& gpio, bool inverted = false);
30 explicit DigitalOut(const DigitalOut& other) = delete;
32 virtual ~DigitalOut() = default;
34
35 void setInverted(bool inverted) override;
36 void set(State state = High) override;
37 void reset() override;
38 void toggle() override;
39 State state() const override;
40
41private:
43 Gpio& m_gpio;
45 bool m_inverted = false;
46};
47} /* namespace semf */
48#endif /* SEMF_OUTPUT_DIGITALOUT_H_ */
Class for handling a digital output.
Definition: digitalout.h:22
State state() const override
Gets the present/current state of a GPIO pin.
Definition: digitalout.cpp:68
void set(State state=High) override
Sets the output level of a GPIO pin.
Definition: digitalout.cpp:27
void reset() override
Definition: digitalout.cpp:57
DigitalOut(Gpio &gpio, bool inverted=false)
Constructor.
Definition: digitalout.cpp:15
void setInverted(bool inverted) override
Configures the inversion of the output.
Definition: digitalout.cpp:21
void toggle() override
Definition: digitalout.cpp:62
DigitalOut(const DigitalOut &other)=delete
Interface class for using a GPIO pin of the microcontroller.
Definition: gpio.h:23
Class for handling a digital output.
Definition: digitalout.h:24
virtual ~DigitalOut()=default