Ошибка в коде Arduino, помогите пожалуйста

Тема в разделе "Arduino & Shields", создана пользователем Olezhka, 2 июн 2016.

  1. Olezhka

    Olezhka Нуб

    Сделал код для управления манипулятором на 6 сервоприводах, а он выдаёт ошибку.
    Нужно управлять 6 потенциометрами 6 сервоприводами.
    Вот код:

    Код (C++):
    #include <Servo.h>

    Servo myservo2;
    Servo myservo3;
    Servo myservo4;
    Servo myservo5;
    Servo myservo6;
    Servo myservo7;
    int a0,a1,a2,a3,a4,a5;
    void setup()
    {
    // устанавливаем пин как вывод управления сервой
      myservo2.attach(2);
      myservo3.attach(3);
      myservo4.attach(4);
      myservo5.attach(5);
      myservo6.attach(6);
      myservo7.attach(7);
    Serial.begin(9600);
    }
    // аналоговые порты для приема значений с резисторов
      const int pin1 = 0;
      const int pin2 = 1;
      const int pin3 = 2;
      const int pin4 = 3;
      const int pin5 = 4;
      const int pin6 = 5;
    void loop()
    {  
      a0=  map(analogRead(pin1), 0 , 1024, 0, 180);
      myservo2.write(a0);
      a1=  map(analogRead(pin2), 0 , 1024, 0, 180);
      myservo3.write(a1);
      a2=  map(analogRead(pin3), 0 , 1024, 0, 180);
      myservo4.write(a2);
      a3=  map(analogRead(pin4), 0 , 1024, 0, 180);
      myservo5.write(a3);
      a4=  map(analogRead(pin5), 0 , 1024, 0, 180);
      myservo6.write(a4);
      a5=  map(analogRead(pin6), 0 , 1024, 0, 180);
      myservo7.write(a5);
    Serial.println "A0 = "+String(a0)+"|  "A1 = "+String(a1)+"|  A2 = "+String(a2)+"|  A3 = "+String(a3)+"|  A4 = "+String(a4)+"|  A5 = "+String(a4)+"|  ;
    }
    Вот ошибка:


    sketch_jun02c.ino: In function 'void loop()':
    sketch_jun02c.ino:42:16: error: expected ';' before string constant
    sketch_jun02c.ino:42:150: error: statement cannot resolve address of overloaded function
    Ошибка компиляции.
     
  2. ZAZ-965

    ZAZ-965 Гуру

    Вам же компилятор написал строку и позицию которую он не понял
    Код (C++):
    Serial.println ( "A0 = " + String(a0) + "|  A1 = " + String(a1) + "|  A2 = " + String(a2) + "|  A3 = " + String(a3) + "|  A4 = " + String(a4) + "|  A5 = " + String(a4)+"|" ) ;
    У вас пропущена - открывающая и закрывающая скобки в функции Serial.println, плюс ошибка в двойных кавычках, которую определила даже подсветка синтаксиса на форуме. Сравните, что считает строкой (подсвечено красным) у вас и у меня.
     
    Последнее редактирование: 2 июн 2016
  3. Olezhka

    Olezhka Нуб

    Спасибо. Вот ещё вопрос: после загрузки этого кода или других, сервоприводы начинают шевелится без помощи потенциометра. Как это исправить?