컴파일 오류가 납니다. 오류코드를 확대해 봤는데 초음파 센서에서 사용된 코드가 아닌데 오류명으로 나오는 등 이해가 안됩니다.
모터 컴파일은 정상 업로드 된 상태이며, 초음파 센서 컴파일 오류가 납니다.
과제물 제출땜에 급한데
넘 쉽지 않네요. 잘 봐주십시요.
오류코드는 첩무했습니다.
1. 모터 컴파일 입니다.
#include <SoftwareSerial.h>
#include <AFMotor.h>
AF_DCMotor motor_L(1);
AF_DCMotor motor_R(4);
void setup() {
motor_L.setSpeed(175);
motor_L.run(RELEASE);
motor_R.setSpeed(200);
motor_R.run(RELEASE);
}
void loop() {
motor_L.run(FORWARD);
motor_R.run(FORWARD);
delay(3000);
motor_L.run(RELEASE);
motor_R.run(RELEASE);
delay(1000);
motor_L.run(BACKWARD);
motor_R.run(BACKWARD);
delay(3000);
}
2. 초음파센서 컴파일 입니다.
#include <SoftwareSerial.h>
#include <AFMotor.h>
AF_DCMotor motor_L(1);
AF_DCMotor motor_R(4);
int i;
int TrigPin = A0;
int EchoPin = A1;
long duration, distance;
void Obstacle_Check(){
int val = random(2);
Distance_Measurement();
Serial.println(distance);
while (distance < 200) {
if (distance < 180) {
Backward();
delay(250);
stop();
delay(50);
Distance_Measurement();
}
else {
if (val == 0) {
Right();
delay(400);
}
else if (val == 1) {
Left();
delay(400);
}
Distance_Measurement();
}
}
}
void Distance_Measurement() {
digitalWrite(TrigPin, LOW);
delay(2);
digitalWrite(TrigPin, HIGH);
delayMicroseconds(10);
digitalWrite(TrigPin, LOW);
duration = pulseIn(EchoPin, HIGH);
distance = ((float)(340 * duration) / 1000) / 2;
delay(5);
}
void Forward(){
motor_L.run(FORWARD); motor_R.run(FORWARD);
for (i = 0; i < 200; i = i + 20) {
motor_L.setSpeed(i); motor_R.setSpeed(i);
delay(2);
}
for (i = 200; i < 0; i = i - 20) {
motor_L.setSpeed(i); motor_R.setSpeed(i);
delay(2);
}
}
void Backward() {
motor_L.run(BACKWARD); motor_R.run(BACKWARD);
for (i = 0; i < 200; i = i + 20) {
motor_L.setSpeed(i); motor_R.setSpeed(i);
delay(2);
}
for (i = 200; i < 0; i = i - 20) {
motor_L.setSpeed(i); motor_R.setSpeed(i);
delay(2);
}
}
void Right() {
motor_L.run(FORWARD); motor_R.run(BACKWARD);
for (i = 0; i < 180; i = i + 20) {
//j = i*1.3; if(j >= 200) j = 200;
motor_L.setSpeed(i); motor_R.setSpeed(i);
delay(2);
}
for (i = 180; i < 0; i = i - 20) {
motor_L.setSpeed(i); motor_R.setSpeed(i);
delay(2);
}
}
void Left() {
motor_L.run(BACKWARD); motor_R.run(FORWARD);
for (i = 0; i < 180; i = i + 20) {
//j = i*1.3; if(j >= 200) j = 200;
motor_L.setSpeed(i); motor_R.setSpeed(i);
delay(2);
}
for (i = 180; i < 0; i = i - 20) {
motor_L.setSpeed(i); motor_R.setSpeed(i);
delay(2);
}
}
void stop() {
motor_L.run(RELEASE); motor_R.run(RELEASE);
for (i = 200; i >= 0; i = i - 20) {
motor_L.setSpeed(i); motor_R.setSpeed(i);
delay(2);
}
}
업로드 오류는 오류메세지 내용 대로 setup 함수와 loop 함수가 없어서 그렇습니다
제공되는 예제를 실행해서 업로드 해보세요