是否有跨平台的c++;可以枚举端口的串行端口库? 我正在寻找一个可以与串口设备连接和通信的C++库。我需要一个可以在windows和linux上使用的。我已经找到了“serialib”,但它没有枚举可用端口的功能

是否有跨平台的c++;可以枚举端口的串行端口库? 我正在寻找一个可以与串口设备连接和通信的C++库。我需要一个可以在windows和linux上使用的。我已经找到了“serialib”,但它没有枚举可用端口的功能,c++,serial-port,cross-platform,C++,Serial Port,Cross Platform,所以我要么需要一个跨平台的“端口枚举器”库,要么需要一个全新的跨平台串行端口库 有人知道好的吗 谢谢,Dan。该项目是一个跨平台串行端口库,包括端口枚举。是他们对所有串行端口进行简单枚举的示例。 这是一个跨平台串行端口库,获得MIT许可,运行时没有外部依赖项。您试图解决的问题不正确。您可以将串行电缆插入机器背面带有清晰标签的连接器的日子早已过去。您可以通过本机调用获得可用端口的列表,但这仍然不能告诉您这些端口中的哪些端口实际连接到设备。用户必须弄清楚这一点。向他提供一个允许他输入端口名的配置文

所以我要么需要一个跨平台的“端口枚举器”库,要么需要一个全新的跨平台串行端口库

有人知道好的吗

谢谢,Dan。

该项目是一个跨平台串行端口库,包括端口枚举。是他们对所有串行端口进行简单枚举的示例。


这是一个跨平台串行端口库,获得MIT许可,运行时没有外部依赖项。

您试图解决的问题不正确。您可以将串行电缆插入机器背面带有清晰标签的连接器的日子早已过去。您可以通过本机调用获得可用端口的列表,但这仍然不能告诉您这些端口中的哪些端口实际连接到设备。用户必须弄清楚这一点。向他提供一个允许他输入端口名的配置文件。现在,端口名的具体格式已不再重要。必须在配置文件中写入端口名会带来不便。我见过一些跨平台的应用程序,它们枚举可用/连接的端口,并为用户提供一个列表。这就是我想要的。(一个很好的例子是ArduinoIDE,它是用java编写的。)您找到了Arduino的跨平台库吗?当然,这给用户带来了不便。串行端口可以追溯到七十年代,四十年前的硬件不支持即插即用。这里的错误是依赖一个有四十年历史的硬件标准。是的,可能不是你的错,一些硬件供应商选择了简单的路线。寻找另一家供应商。类似arduino上的FTDI芯片提供USB访问arduino中类似ATMega328的芯片上的串行端口,串行通信并不过时,几乎所有微控制器都有TX和RX引脚。USB绝对没有过时。FTDI驱动程序为您提供串行连接,就像硬件串行端口一样,这是所有现代操作系统完全支持的。我没有使用过时的技术。我不介意为每个操作系统的独特方法创建自己的lib,因此我想我应该问,对于每个操作系统,什么是最好的方法?谢谢你,丹。FTDI司机是个臭名昭著的人。经销商拒绝支持它,FTDI也不会发布源代码给任何人一个改进的机会。可能是因为他们不拥有它。达杜姆。祝你好运。谢谢你的建议,我不确定这是否是我想要的,因为我没有使用Qt。这很公平,但请记住,你不需要使用Qt的任何GUI功能。QtCore库(使用QextSerialPort所需的一切)只依赖于Glib和PCRE。我在尝试将QextSerialPort集成到例如Eclipse而不是qtcreatorhanks中时出现了多次错误,看起来就像我所追求的那样。不过,我已经开始在这里使用这个:这对我来说很好。关于:
“它使用轮询从串行端口接收字符。不支持基于中断/事件的。”
没有上述限制的任何其他选项吗?不幸的是,库对内存分配、泄漏、,就我所知,抛出异常、锁定和异常不支持异步IO。@Trass3r哪个库不小心?teuniz RS-232或wjwwood系列?wjwwood图书馆。