]> git.piffa.net Git - rover/blob - libraries/rover/rover.cpp
5328a02bf8328a8388edabac9e4c724faa7d2e70
[rover] / libraries / rover / rover.cpp
1 /*
2   Rover 
3
4 Autore: Andrea Manni
5
6 Link: http://aero.piffa.net
7 Licenza:    GPLv3
8
9 */
10
11 #include "Arduino.h"
12 #include "rover.h"
13
14 #define dEBUG
15
16 // Configurazione con OUTPUT digitali
17 // motor one
18 const int enA = 6;
19 const int in1 = 7;
20 const int in2 = 8;
21 byte speedA = 255;
22 // motor two
23 const int enB = 5;
24 const int in3 = 4;
25 const int in4 = 3;
26 byte speedB = 255;
27 // Funzioni
28
29 void abilita() {
30 // Abilita i PINs come OUTPUTS
31     pinMode(enA, OUTPUT);
32     pinMode(in1, OUTPUT);
33     pinMode(in2, OUTPUT);
34     pinMode(enB, OUTPUT);
35     pinMode(in3, OUTPUT);
36     pinMode(in4, OUTPUT);
37 }
38
39
40 // MotorB
41 void forwardA() {
42     // Avanzamento motore
43     digitalWrite(in1,LOW);
44     digitalWrite(in2,HIGH);
45     analogWrite(enA,speedA);
46 }
47
48 void backwardA() {
49     // Reverse motore
50     digitalWrite(in2,LOW);
51     digitalWrite(in1,HIGH);
52     analogWrite(enA,speedA);
53 }
54
55 void stopA() {
56     // Stop
57     digitalWrite(enA,LOW);
58 }
59
60 // MotorB
61 void forwardB() {
62     // Avanzamento motore
63     digitalWrite(in3,LOW);
64     digitalWrite(in4,HIGH);
65     analogWrite(enB,speedB);
66 }
67
68 void backwardB() {
69     // Reverse motore
70     digitalWrite(in4,LOW);
71     digitalWrite(in3,HIGH);
72     analogWrite(enB,speedB);
73 }
74
75 void stopB() {
76     // Stop
77     digitalWrite(enB,LOW);
78 }