0

コマンド「POS;」を使用してモーターの位置を取得したいのですが、「a ⌂▲ yI ° y」という出力が得られます。数値を取得できる場合はどうなりますか? それから時々私は空の答えを受け取りますシリアルポート経由で出力を得るには時間がかかると答えました。完全な出力が表示されるまで待機するには、コードに何を追加する必要がありますか?

手動コントローラ(更新マニュアル)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO.Ports;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {

            SerialPort sp = new SerialPort();
            sp.PortName = "COM1";
            sp.BaudRate = 9600;
            sp.Open();

            sp.Encoding = System.Text.Encoding.GetEncoding(28591);

            if (sp.IsOpen)
            {
                sp.Write("ENA;");

                sp.Write("POS;");

                string msgPos = sp.ReadExisting();
                Console.WriteLine(msgPos);

                sp.Write("OFF;");
                sp.Close();
                Console.ReadKey();
            }

        }
    }
}
4

1 に答える 1