aboutsummaryrefslogtreecommitdiff
path: root/examples/Blink3rdPartyLib/Toggle/TogglePin.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/Blink3rdPartyLib/Toggle/TogglePin.cpp')
-rw-r--r--examples/Blink3rdPartyLib/Toggle/TogglePin.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/examples/Blink3rdPartyLib/Toggle/TogglePin.cpp b/examples/Blink3rdPartyLib/Toggle/TogglePin.cpp
new file mode 100644
index 0000000..fd6925d
--- /dev/null
+++ b/examples/Blink3rdPartyLib/Toggle/TogglePin.cpp
@@ -0,0 +1,27 @@
+// This program is free software and is licensed under the same conditions as
+// describe in https://github.com/sudar/Arduino-Makefile/blob/master/licence.txt
+
+#include "TogglePin.h"
+
+#ifdef ARDUINO
+#if ARDUINO >= 100
+#include "Arduino.h"
+#else
+#include "WProgram.h"
+#endif
+#endif // ARDUINO
+
+TogglePin::TogglePin(int pinNumber, bool state)
+ : _pinNumber(pinNumber), _state(state)
+{
+ pinMode(_pinNumber, OUTPUT);
+ digitalWrite(_pinNumber, _state ? HIGH : LOW);
+}
+
+bool
+TogglePin::toggle()
+{
+ _state = !_state;
+ digitalWrite(_pinNumber, _state ? HIGH : LOW);
+ return _state;
+}