AskSin++
Motor.h
1 //- -----------------------------------------------------------------------------------------------------------------------
2 // AskSin++
3 // 2018-08-10 papa Creative Commons - http://creativecommons.org/licenses/by-nc-sa/3.0/de/
4 //- -----------------------------------------------------------------------------------------------------------------------
5 
6 #ifndef __MOTOR_H__
7 #define __MOTOR_H__
8 
9 #include <Arduino.h>
10 
11 namespace as {
12 
13 class Motor {
14 public:
15  Motor () {}
16  ~Motor () {}
17 
18  void init () {}
19  void up () {}
20  void down () {}
21  void stop () {}
22 
23 };
24 
25 
26 template<uint8_t DIR_RELAY_PIN,uint8_t ON_RELAY_PIN>
28 public:
29  TwoRelayMotor () {}
30  ~TwoRelayMotor () {}
31 
32  void init () {
33  pinMode(DIR_RELAY_PIN,OUTPUT);
34  pinMode(ON_RELAY_PIN,OUTPUT);
35  stop();
36  }
37 
38  void up () {
39  digitalWrite(DIR_RELAY_PIN,HIGH);
40  digitalWrite(ON_RELAY_PIN,HIGH);
41  }
42 
43  void down () {
44  digitalWrite(DIR_RELAY_PIN,LOW);
45  digitalWrite(ON_RELAY_PIN,HIGH);
46  }
47 
48  void stop () {
49  digitalWrite(DIR_RELAY_PIN,LOW);
50  digitalWrite(ON_RELAY_PIN,LOW);
51  }
52 
53 };
54 
55 }
56 
57 #endif
as::Motor
Definition: Motor.h:13
as::TwoRelayMotor
Definition: Motor.h:27