C#serialport.Readline与终端串行读取的区别



unity内部运行的C#代码之间有什么区别:

    SerialPort stream = new SerialPort ( "/dev/cu.usbserial-A9Y59ZJV", 9600 );
    stream.ReadTimeout = 1000;
    stream.Open();
    while( stream.IsOpen )
    {
        try
        {
            Debug.Log( stream.ReadLine() );
        }
        catch (TimeoutException e)
        {
            Debug.LogError (name + " timed out reading from Arduino: " + e);
        }
    }
}

并运行UNIX终端命令:

screen /dev/cu.usbserial-A9Y59ZJV 9600 –L

C#代码抛出TimeOutExceptions。终端命令读取数据(它以永远为第二(

两者不是同时运行的。Unity代码实际上已分为start((和update((消息。

我在编写问题时意识到自己的错误,但是正在回答其他人也有同样的问题。

要小心" r n"one_answers" n"之间的区别。C#S SerialPort期望根据平台的不同值。

如果您在没有NewLine的接收平台版本的情况下发送数据,则无法使用readline。改用readbyte。

最新更新