C# 和 Arduino 时序

C# and Arduino Timing

美好的一天,

我正在尝试使用 C#、Arduino 和 LED 电源。首先,C# 会向我的 Arduino 发送一些代码序列来激活我的电机。我在电机上使用编码器来了解它的位置。当电机到达我想要的位置时,C# 将向我的 LED 电源发送另一个序列。如何让它发挥作用?现在,当我发送我的代码时,C# 会在我想要的位置尚未到达时向我的 LED 电源发送序列。我希望有一个人可以帮助我。谢谢。

C#代码:

arduino.write("A175");
if(arduino.read=="G") {
  powersuppy.write("S100T000F000F000FC#");
} else { }

A​​rduino代码:

if(serial.Available()>0) {
  data=Serial.read();
  if (data=='A') {
    int destination=parseInt(Serial.read());
    for(count; count<destination ;count++) {
      motorgo();
      encoder();
    }
    Serial.write("G");
  }
}

您正在 for 循环结束后将 "G" 发送到 C#。您需要检查是否已到达位置然后发送 "G".