소스 코드 예시
#define MA1 5
#define MA2 6
#define MB1 9
#define MB2 10
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); // 9번 : 1초 전진
stop2(); // 정지
}
void loop() {
// 반복 없음
}소스 코드 예시 2
#define MA1 5 #define MA2 6 #define MB1 9 #define MB2 10 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 stop3(int e) { // 정지 digitalWrite(MA1, 0); digitalWrite(MA2, 0); digitalWrite(MB1, 0); digitalWrite(MB2, 0); delay(e); } void setup() { pinMode(MA1, OUTPUT); pinMode(MA2, OUTPUT); pinMode(MB1, OUTPUT); pinMode(MB2, OUTPUT); forward(1000); // 1초 전진 stop3(500); // 0.1초 정지 left(600); // 좌회전 stop3(500); // 0.1초 정지 forward(1000); // 1초 전진 stop2(); // 정지 } void loop() { // 반복 없음 }

댓글 없음:
댓글 쓰기