BASIC4MCU | 질문게시판 | 아두이노 업로드 오류가 뜹니다 ㅠㅠ
페이지 정보
작성자 Ptype4 작성일2022-12-11 17:37 조회3,676회 댓글1건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=22155
본문
어제 모터속도 수정하면서 굴러가는거 체크하는데 4번째인가 5번째 수정중 업로드 누르는데 업로드 중 오류가 뜬다고 합니다. 업로드가 안되니 모터 속도도 그 이전에 업로드한 속도로 굴러가고 속도만 체킹해주면 되는데 이게 이렇게 변수가 나네요.. 포트 확인도하였습니다... 잘 되다가 갑자기 안되니까 당황스럽네요ㅠㅠ
오류코드 입니다.
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x2c
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xed
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xee
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x54
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xf7
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x67
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xdd
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x56
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xdf
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xbd
---------------------------------------------------------------------------
제 코드 입니다.
#include <SoftwareSerial.h> //시리얼 통신 라이브러리 호출
//모터 PIN 설정
#define LEFT_A1 7 //왼쪽 바퀴
#define LEFT_B1 6 //왼쪽 바퀴
#define RIGHT_A2 5 //오른쪽 바퀴
#define RIGHT_B2 4 //오른쪽 바퀴
//L298N 속도
#define ENA 9
#define ENB 10
//초음파 센서 PIN 설정
#define IR_TRIG 11 //TRIG 핀 설정 (초음파 보내는 핀)
#define IR_ECHO 8 //ECHO 핀 설정 (반사된 초음파 받는 핀)
//모터 fan PIN 설정
#define coolingfan 3 //쿨링팬 핀 설정
void setup() {
Serial.begin(9600); //시리얼모니터
//모터 핀모드 설정
pinMode(LEFT_A1, OUTPUT);
pinMode(RIGHT_A2, OUTPUT);
pinMode(LEFT_B1, OUTPUT);
pinMode(RIGHT_B2, OUTPUT);
//초음파 센서 핀모드 설정
pinMode(IR_TRIG, OUTPUT);
pinMode(IR_ECHO, INPUT);
//모터 fan 핀모드 설정
pinMode(coolingfan, OUTPUT);
//모터 속도
pinMode(ENA, OUTPUT);
pinMode(ENB, OUTPUT);
analogWrite(ENA, 0);
analogWrite(ENB, 0);
delay(1500);
}
void loop() {
float duration, distance;
digitalWrite(IR_TRIG, HIGH);
delay(10);
digitalWrite(IR_TRIG, LOW);
// echoPin 이 HIGH를 유지한 시간
duration = pulseIn(IR_ECHO, HIGH);
// HIGH 였을 때 시간(초음파가 보냈다가 다시 들어온 시간)을 가지고 거리를 계산 한다.
// 340은 초당 초음파(소리)의 속도, 10000은 밀리세컨드를 세컨드로,
//왕복거리이므로 2로 나눠주면 거리가 cm 로 나옴
distance = ((float)(340 * duration) / 10000) / 2;
Serial.print("\nDIstance : ");
Serial.println(distance);
if (distance < 20) { //장애물 감지 (20cm 이내)
Serial.println("stop");
stop(); //정지(1초)
Serial.println("backward");
backward(); //후진(0.5초)
int rnd = random(0, 2); //장애물 감지시 좌/우회전 랜덤처리
if (rnd == 0) {
Serial.println("left");
right();
} else {
Serial.println("right");
left();
}
} else { //장애물 없음
Serial.println("forward");
forward();
}
}
void forward() {
digitalWrite(LEFT_A1, LOW);
digitalWrite(LEFT_B1, HIGH);
digitalWrite(RIGHT_A2, LOW);
digitalWrite(RIGHT_B2, HIGH);
digitalWrite(coolingfan,HIGH);
analogWrite(ENA, 255/2);
analogWrite(ENB, 255/2);
delay(1000);
}
void backward() {
digitalWrite(LEFT_A1, HIGH);
digitalWrite(LEFT_B1, LOW);
digitalWrite(RIGHT_A2, HIGH);
digitalWrite(RIGHT_B2, LOW);
digitalWrite(coolingfan,HIGH);
analogWrite(ENA, 255/2.41);
analogWrite(ENB, 255/2.41);
delay(700);
}
void left() {
digitalWrite(LEFT_A1, LOW);
digitalWrite(LEFT_B1, HIGH);
digitalWrite(RIGHT_A2, HIGH);
digitalWrite(RIGHT_B2, LOW);
digitalWrite(coolingfan,HIGH);
analogWrite(ENA, 255/2);
analogWrite(ENB, 255/2);
delay(1000);
}
void right() {
digitalWrite(LEFT_A1, HIGH);
digitalWrite(LEFT_B1, LOW);
digitalWrite(RIGHT_A2, LOW);
digitalWrite(RIGHT_B2, HIGH);
digitalWrite(coolingfan,HIGH);
analogWrite(ENA, 255/2);
analogWrite(ENB, 255/2);
delay(1000);
}
void stop() {
digitalWrite(LEFT_A1, LOW);
digitalWrite(LEFT_B1, LOW);
digitalWrite(RIGHT_A2, LOW);
digitalWrite(RIGHT_B2, LOW);
digitalWrite(coolingfan,LOW);
delay(1000);
}
댓글 1
조회수 3,676master님의 댓글
master 작성일
업로드는 USB 뺏다 다시 꼽아도 안되면
USB 드라이버 새로 설치하는 수 밖에 없습니다.