-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdirection.ino
84 lines (79 loc) · 1.2 KB
/
direction.ino
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
void stop()
{
digitalWrite(ENA,LOW);
digitalWrite(ENB,LOW);
}
void stopFor(int msec)
{
stop();
delay(msec);
}
void dirForward()
{
digitalWrite(ENA,HIGH);
digitalWrite(ENB,HIGH);
digitalWrite(in1,HIGH);
digitalWrite(in2,LOW);
digitalWrite(in3,LOW);
digitalWrite(in4,HIGH);
}
void forwardFor(int msec)
{
dirForward();
delay(msec);
}
void smartForward()
{
if (checkDistance() > 30)
{
obstruction = false;
dirForward();
}
else
{
stop();
obstruction = true;
}
}
void dirBack()
{
digitalWrite(ENA,HIGH);
digitalWrite(ENB,HIGH);
digitalWrite(in1,LOW);
digitalWrite(in2,HIGH);
digitalWrite(in3,HIGH);
digitalWrite(in4,LOW);
}
void backFor(int msec)
{
dirBack();
delay(msec);
}
void rotateLeft()
{
digitalWrite(ENA,HIGH);
digitalWrite(ENB,HIGH);
digitalWrite(in1,LOW);
digitalWrite(in2,HIGH);
digitalWrite(in3,LOW);
digitalWrite(in4,HIGH);
}
void rotateLeftFor(int msec)
{
rotateLeft();
delay(msec);
}
void rotateRight()
{
digitalWrite(ENA,HIGH);
digitalWrite(ENB,HIGH);
digitalWrite(in1,HIGH);
digitalWrite(in2,LOW);
digitalWrite(in3,HIGH);
digitalWrite(in4,LOW);
}
void rotateRightFor(int msec)
{
rotateRight();
delay(msec);
}