기본 코드

모터 테스트 코드

가장 먼저 할 일은 모터가 제대로 작동하는지 확인하는 것입니다. 아래 코드는 자동차를 2초 동안 앞으로 움직였다가 1초 동안 멈추는 것을 반복합니다.

L298N 모터 드라이버를 사용하는 것을 기준으로 작성되었습니다.


// 모터 A 제어 핀
#define ENA 5
#define IN1 18
#define IN2 19

// 모터 B 제어 핀
#define ENB 23
#define IN3 22
#define IN4 21

void setup() {
  // 모터 제어 핀을 출력으로 설정
  pinMode(ENA, OUTPUT);
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
  pinMode(ENB, OUTPUT);
  pinMode(IN3, OUTPUT);
  pinMode(IN4, OUTPUT);
}

void loop() {
  // 앞으로 이동
  moveForward();
  delay(2000);

  // 정지
  stopMotors();
  delay(1000);
}

void moveForward() {
  // 모터 A 정회전
  digitalWrite(IN1, HIGH);
  digitalWrite(IN2, LOW);
  analogWrite(ENA, 200); // 속도 제어 (0-255)

  // 모터 B 정회전
  digitalWrite(IN3, HIGH);
  digitalWrite(IN4, LOW);
  analogWrite(ENB, 200); // 속도 제어 (0-255)
}

void stopMotors() {
  // 모터 A 정지
  digitalWrite(IN1, LOW);
  digitalWrite(IN2, LOW);
  analogWrite(ENA, 0);

  // 모터 B 정지
  digitalWrite(IN3, LOW);
  digitalWrite(IN4, LOW);
  analogWrite(ENB, 0);
}
        
홈으로 돌아가기