如果链接示例失败,则意味着 RXTX 没有检测到您机器上的任何串行端口。您的机器上可能有一个串行端口,但您的操作系统无法识别它的原因之一可能是因为它实际上是一个串行到 USB 适配器,并且被识别为 USB 端口。
如果您在 Linux 上,串行端口通常如下所示:
ls /dev/ttyS*
输出:
/dev/ttyS0
/dev/ttyS1
/dev/ttyS2
调整后的端口可能如下所示:
/dev/ttyUSB0
如果您可以在串行连接设备(例如 POS 打印机或 LCD 显示器)上看到一些输出,您可以像这样测试它:
echo 'hello' > /dev/ttyUSB0
如果设备连接到该端口并且一切正常,则设备应显示“hello”字符串。
但是,我肯定会推荐Java 简单的串行连接器库而不是 RxTx。我们已经在商业 POS 应用程序中尝试过这两种应用程序(此时超过 100 万张票)。
RxTx 已成功用于顺序打印。在打印场景中,RxTx 库被顺序调用,仅用于将数据发送到端口。只有一些串行标志是红色的,以检测设备的业务。
但是由于它的限制,我们根本不能用它来读取串行连接的 IButton 的输入。在 iButton 场景中,预计数据将从端口异步接收。当我们尝试使用 RxTx 实现它时,经常会出现错误和挂起,但使用 JSSC 几乎是立即实现的。