소스 코드 예시
#define MA1 5
#define MA2 6
#define MB1 9
#define MB2 10
void setup() {
pinMode(MA1, OUTPUT);
pinMode(MA2, OUTPUT);
pinMode(MB1, OUTPUT);
pinMode(MB2, OUTPUT);
digitalWrite(MA1, 1); // 1초 전진
digitalWrite(MA2, 0);
digitalWrite(MB1, 1);
digitalWrite(MB2, 0);
delay(1000);
digitalWrite(MA1, 1); // 좌회전
digitalWrite(MA2, 0);
digitalWrite(MB1, 0);
digitalWrite(MB2, 1);
delay(600); // 시간은 적당히 조절해야 함
digitalWrite(MA1, 1); // 1초 전진
digitalWrite(MA2, 0);
digitalWrite(MB1, 1);
digitalWrite(MB2, 0);
delay(1000);
digitalWrite(MA1, 0);
digitalWrite(MA2, 0);
digitalWrite(MB1, 0);
digitalWrite(MB2, 0);
}
void loop() {
}
프롬프트 예시
위 코드에서 좌회전 시간을 0.2초로 바꿔줘.
프롬프트 예시
위 코드에서 직진 한 후 1초간 멈추고, 좌회전 후 1초간 멈추는 등 멈추는 코드를 넣어줘.
소스 코드 예시 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(100); // 0.1초 정지
left(600); // 좌회전 (원래 코드와 동일)
stop3(100); // 0.1초 정지
forward(1000); // 1초 전진
left(600); // 좌회전 (원래 코드와 동일)
stop3(100); // 0.1초 정지
forward(1000); // 1초 전진
stop2(); // 정지
}
void loop() {
// 반복 없음
}
댓글 없음:
댓글 쓰기