Go Down

Topic: 2支程式整合出現 "Servo.h"找到多個程式庫 的錯誤 (Read 654 times) previous topic - next topic

youwei

我使用coral dev board開發板傳送訊號給arduino,之後arduino控制sg90馬達到特定角度,
但是單一執行傳送訊號和只用arduino控制馬達都沒問題.2個整合起來就出現這個錯誤:

sg90:29:1: error: expected declaration before '}' token
 }
 ^
"Servo.h"找到多個程式庫
已使用: /home/must/下載/arduino-1.8.10-linux64/arduino-1.8.10/libraries/Servo
exit status 1
expected declaration before '}' token


下面是我的程式(這支是單獨控制馬達):
Code: [Select]
#include <Servo.h>   

Servo myservo;  // 建立SERVO物件


void setup() {
  myservo.attach(6);  // 設定要將伺服馬達接到哪一個PIN腳
}

void loop() {   
  myservo.write(0);  //旋轉到0度,就是一般所說的歸零
  delay(1000);
  myservo.write(90); //旋轉到90度
  delay(1000);
  myservo.write(180); //旋轉到180度
  delay(1000);
  myservo.write(0);
  delay(1000);
}


這支是dev board傳訊號後arduino接收到在傳回來:
Code: [Select]
void setup()
{
  Serial.begin(115200); // 9600 bps
}
void loop()
{
  if ( Serial.available())
    {
      if('s' == Serial.read())
        Serial.println("Hello Raspberry,I am Arduino.");
     }
}



最後整合有錯誤的是這支:
Code: [Select]
#include <Servo.h>   //載入函式庫,這是內建的,不用安裝
int i;
Servo myservo;  // 建立SERVO物件

void setup() {
  myservo.attach(6);  // 設定要將伺服馬達接到哪一個PIN腳
  Serial.begin(115200);
}

void loop() {   
  if(Serial.available())
  {
    if('1'==Serial.read())
     myservo.write(0);  //旋轉到0度,就是一般所說的歸零
  delay(1000);
  myservo.write(90); //旋轉到90度
  delay(1000);
  myservo.write(0);
  delay(1000);
  }
     if('2'==Serial.read())
     myservo.write(0); 
  delay(1000);
  myservo.write(100); //旋轉到100度
  delay(1000);
  myservo.write(0);
  delay(1000);
  }
}

Go Up