정보나눔

오픈소스하드웨어 프로젝트에 대한 다양한 정보를 나누는 공간입니다.

exit status 1 보드 Arduino Uno 컴파일 에러 / 이유를 모르겠습니다 ㅠㅠ 도와주세요 ㅜㅜ
겜콘과20학번 | 2020-05-01
 

1. 프로젝트 사용한 보드 종류

  

  아두이노 UNO

 

 

2. 사용한 개발 프로그램명

 

  아두이노 IDE

 

 

3. 사용한 센서 모델명

 

  HC-06(블루투스), L9110S 

 

4. 연결한 회로 설명 (또는 이미지)

 

 8(RX) 9(TX) 3(B-IA) 4(B-IB) 5(A-IB) 6(A-IA)에 연결했습니다.

 

5. 소스코드 (주석 필수)

 

#include <SoftwareSerial.h>
#include <MagicRC.h>

MagicRC myRC(8, 9, 3, 4, 5, 6); // MagicRC(RX, TX, B-IA, B-IB, A-IB, A-IA)

void setup() {
  myRC.begin(9600); // Bluetooth baudrate
}

void loop() {
  myRC.run();
}

 void MagicRC:: run() {
  if (btSerial->available()){
    char c = btSerial->read();
 
     switch (c) {
      case 'S':
        stop();
        break;
      case 'F':
        forward();
        break;
      case 'B':
       backward();
        break;
      case 'L':
        turnLeft();
        break;
      case 'R':
        turnRight();
        break;
    }
  }
}

 

6. 문제점 및 에러 내용

 

아두이노:1.8.12 (Windows 10), 보드:"Arduino Uno"

libraries\MagicRC\MagicRC.cpp.o (symbol from plugin): In function `MagicRC::MagicRC(unsigned char, unsigned char, unsigned char, unsigned char, unsigned char, unsigned char)':

(.text+0x0): multiple definition of `MagicRC::run()'

sketch\MagicRC.ino.cpp.o (symbol from plugin):(.text+0x0): first defined here

collect2.exe: error: ld returned 1 exit status

exit status 1
보드 Arduino Uno 컴파일 에러.

이 리포트는 파일 -> 환경설정에 "컴파일중 자세한 출력보이기"를
활성화하여 더 많은 정보를
보이게 할 수 있습니다.

 
프로필사진

판다마니아 2020-05-08 08:31:38

run 이라는 함수가 라이브러리에서도 선언되고, 아두이노 코드에서도 선언되어 중복 선언 오류가 발생한것 같습니다.

 

run 함수안에 있는 내용을 loop문 안으로 빼주시면 될것 같습니다.

이전글   |    servo 예제) 모터 작동 및 출력 결과 오류 관련 질문... 2020-04-30
다음글   |    아두이노로 컴퓨터 제어 관련해서 질문드려요... 2020-05-07