JSON проблемы с Arduino и Xojo - PullRequest
       37

JSON проблемы с Arduino и Xojo

0 голосов
/ 03 ноября 2019

Я делаю приложение с помощью xojo, где вы устанавливаете значение 3 ползунков, которое отправляет значение в виде строки с помощью json через последовательный монитор, и я получаю значение json с помощью arduino, чтобы переместить 3 серводвигателя с помощьюзначение слайдера.

Я пытался поиграть с этим json, но, поскольку я довольно новичок, я точно не знаю, как его использовать. В основном код работает, он не выдает ошибку, но он не работает, я очень уверен, что электронная часть полностью права. Вы можете мне помочь?

Это в основном мой код Xojo:

var angles as new jsonitem

angles.value("servo1") = slideservo1.value 

angles.value("servo2") = slideservo2.value 

angles.value("servo3") = slideservo3.value 

angles.Compact = True

Serialcontroller.write(angles.toString)

, а это мой код Arduino:

#include <Servo.h>
#include <ArduinoJson.h>

Servo myServo1;
Servo myServo2;
Servo myServo3;

StaticJsonDocument<200> doc;


void setup() {
  myServo1.attach(8);
  myServo2.attach(9);
  myServo3.attach(10);
  Serial.begin(9600);
}

void loop() {
  if (Serial.available()) {
    deserializeJson (doc, Serial);

    const char* angle1 = doc["servo1"];
    const char* angle2 = doc["servo2"];
    const char* angle3 = doc["servo3"];

    myServo1.write(atoi(angle1));
    myServo2.write(atoi(angle2));
    myServo3.write(atoi(angle3));
    delay(15);
  }
}

Поскольку электронная часть полностьюверно, и код не выдает ошибку, я не понимаю, что это за ошибка. Моя цель - переместить ползунки на Xojo, и значение посылается с помощью json через последовательный монитор, принимается Arduino и используется в качестве «угла» перемещения сервопривода. Заранее спасибо.

1 Ответ

0 голосов
/ 03 ноября 2019

хорошо, решил это сам, вам просто нужно написать "doc" и значение direct в моем файле servo.write, например:

myServo.write(doc["servo1"]);
...