Tôi đang cố gắng triển khai ModBus master trên Windows 10 IoT trên Raspberry Pi 2. Tôi đang sử dụng một cổng USB bên ngoài để RS-232 bộ điều hợp từ bên trong cổng nối tiếp được dành riêng cho Kernel Debugging.Không thể sử dụng SerialDevice.ReadTimeout trong Windows 10 IoT
Cổng nối tiếp đang hoạt động. Câu hỏi của tôi chủ yếu là về thời gian chờ khi đọc.
Đây là mã của tôi:
// 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
Khi không có byte awailable tại đầu vào cổng RX sê-ri, tôi hy vọng các phương pháp LoadAsync trở về 0 sau chờ đợi. Thật không may, nó không bao giờ trở lại. (Ok, nó trở lại sau khi nhận được 256 byte, nhưng đó không phải là những gì tôi muốn)
Vì ModBus sử dụng hết thời gian chờ, tôi không chắc chắn làm thế nào để thực hiện nó. Tôi thậm chí không chắc chắn tôi có thể làm điều đó ...
Có ai đã sử dụng hết thời gian chờ trên Windows 10 cổng nối tiếp IoT không?
Vâng, rõ ràng InputStreamOptions.Partial không hoạt động. Vì vậy, cuộn xúc xắc và thử InputStreamOptions.ReadAhead và None tiếp theo. –