使用usbserial在RxTx上写入数据?

问题描述 投票:1回答:2

我在Linux发行版上使用了usbserial上的RxTx库。 RxTx lib的行为似乎与它在串行上的工作方式完全不同(以一种糟糕的方式)。

我最大的问题之一是RxTx SerialPortEvent.OUTPUT_BUFFER_EMPTY不能通过usb serial在linux上运行。

我如何知道何时应该写入流?我可能错过的任何指标?

到目前为止,我在写作和阅读方面的经验并不是很好。有没有人知道我是否应该在我在流上写时锁定DATA_AVAILABLE处理程序?或者RxTx接受并发读/写?

linux rxtx
2个回答
4
投票

(也许稍微偏离主题,但这里有)

我不熟悉那个特定的库,但是我可以向你保证不会有糟糕的经历(我在安全系统(如:硬件安全设备)业务中工作,其中RS-232被大量使用)并非所有的USB串行转换器天生就是平等的。许多此类设备因此无法正确模拟所有RS-232线路,并且许多设备甚至无法处理任何没有流量控制的通信。在指责库之前,请尝试确认硬件实际上正在执行它应该执行的操作。

在不想支持特定产品或品牌的情况下,我多年来遇到的最好的(如:最少的车型)USB串行转换器是USA-19HS


1
投票

在usb-to-serial上使用RxTx,你不能将notifyOnOutput设置为true,否则它会完全锁定。

我很难学到这一点。这个问题记录在互联网上的一些网站上。

我在Linux上运行它,我相信这是一个Linux唯一的问题,虽然我无法确认。

至于你给我的链接......我已经看过SimpleReader和SimpleWriter示例,但这些并不代表真实世界的应用程序。它不是多线程的,假设读取具有所需的完整数据而不是缓冲读取等。

谢谢,

Jeach!

© www.soinside.com 2019 - 2024. All rights reserved.