我試圖實現Modbus主在Windows 10物聯網在樹莓派2 我使用一個外部USB轉RS-232適配器由於內部串行端口保留用於內核調試。無法在Windows 10使用SerialDevice.ReadTimeout物聯網
串口工作正常。我的問題主要是閱讀時超時。
這裏是我的代碼:
// Initialization
serialDevice.ReadTimeout = new TimeSpan(0, 0, 0, allowedTimeBetweenBytes);
serialDataReader.InputStreamOptions = InputStreamOptions.Partial;
// Reading
uint bytesRead = await serialDataReader.LoadAsync(MaxBufferSize); // 256
// Now use ReadBytes to get actual bytes
由於沒有字節awailable在串行端口RX輸入,我期待的LoadAsync方法等待後返回0。不幸的是,它永遠不會返回(好吧,它收到256字節後返回,但這不是我想要的)
由於ModBus密集使用超時,我不知道如何實現它。我甚至不確定我能做到這些...
有沒有人已經在Windows 10物聯網串行端口上使用超時?
那麼,顯然InputStreamOptions.Partial不起作用。所以滾動骰子,然後嘗試InputStreamOptions.ReadAhead和None。 –