함수를 이용하여 보다 빠르게 코딩하기
반환형 없고, 매개 변수 있는 함수 사용하기(함수 유형 2)
#define MA1 5
#define MA2 6
#define MB1 8
#define MB2 9
void forward(int a) { // 전진
digitalWrite(MA1, 1);
digitalWrite(MA2, 0);
digitalWrite(MB1, 1);
digitalWrite(MB2, 0);
delay(a);
}
void backward(int b) { // 후진
digitalWrite(MA1, 0);
digitalWrite(MA2, 1);
digitalWrite(MB1, 0);
digitalWrite(MB2, 1);
delay(b);
}
void left(int c) { // 좌회전
digitalWrite(MA1, 1);
digitalWrite(MA2, 0);
digitalWrite(MB1, 0);
digitalWrite(MB2, 1);
delay(c);
}
void right(int d) { // 우회전
digitalWrite(MA1, 0);
digitalWrite(MA2, 1);
digitalWrite(MB1, 1);
digitalWrite(MB2, 0);
delay(d);
}
void stop2() { // 정지
digitalWrite(MA1, 0);
digitalWrite(MA2, 0);
digitalWrite(MB1, 0);
digitalWrite(MB2, 0);
}
void setup() {
pinMode(MA1, OUTPUT);
pinMode(MA2, OUTPUT);
pinMode(MB1, OUTPUT);
pinMode(MB2, OUTPUT);
forward(1000); // 1번 : 1초 전진
right(600); // 2번 : 90도 우회전
forward(500); // 3번 : 0.5초 전진
right(1100); // 4번 : 180도 회전
forward(1000); // 5번 : 1초 전진
right(1100); // 6번 : 180도 회전
forward(500); // 7번 : 0.5초 전진
right(600); // 8번 : 90도 우회전
forward(1000); // 10번 : 1초 전진
stop2(); // 정지
}
void loop() {
}
Copyright ⓒ Tech79 All right reserved