-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathbridge1.ino
More file actions
60 lines (53 loc) · 1.26 KB
/
bridge1.ino
File metadata and controls
60 lines (53 loc) · 1.26 KB
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
#include <Servo.h>
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2,3);
int degree_BR;
int degree_CB;
Servo servo_stop;
Servo servo_bridge;
void setup()
{
mySerial.begin(9600);
Serial.begin(9600);
servo_stop.attach(13);
servo_bridge.attach(12);
}
void loop()
{
char c;
if ( mySerial.available() ) {
c = mySerial.read();
if ( c == 'a') { //Block the road
digitalWrite(10, HIGH);
for(degree_CB = 90; degree_CB >= 0; degree_CB -= 1){
servo_stop.write(degree_CB);
delay(50);
}
digitalWrite(10, LOW);
}
else if ( c == 'b') { //Bridge up
digitalWrite(10, HIGH);
for(degree_BR = 0; degree_BR <= 90; degree_BR += 1){
servo_bridge.write(degree_BR);
delay(50);
}
digitalWrite(10, LOW);
}
else if (c == 'c') { //Bridge down
digitalWrite(10, HIGH);
for(degree_BR = 90; degree_BR >= 0; degree_BR -= 1){
servo_bridge.write(degree_BR);
delay(50);
}
digitalWrite(10, LOW);
}
else if ( c == 'd') { //Block the road
digitalWrite(10, HIGH);
for(degree_CB = 0; degree_CB <= 90; degree_CB += 1){
servo_stop.write(degree_CB);
delay(50);
}
digitalWrite(10, LOW);
}
}
}