C:跨平台的RS-232串口库?

Ham*_*mza 23 c cross-platform serial-port interfacing

我正在寻找一个开源的跨平台库,用于处理C语言中的串行端口,这就是令人敬畏的PySerial库(不幸的是我必须在这个应用程序中使用C).

我只找到了这个:http://www.teuniz.net/RS-232/,而且似乎没有提到OS X的兼容性.

Mar*_*n L 33

您会认为串行端口的跨平台C库已经存在了20年,但截至2013年仍然没有,所以我创建了libserialport.

它在Windows,Mac OS X,Linux(包括Android),BSD上进行了测试,也可能在其他Unix系统上构建.它支持:

  • 端口枚举(获取系统上的串行端口列表)
  • 打开,关闭和查询端口
  • 设置端口参数(波特率,奇偶校验等)
  • 端口信令操作(调制解调器控制线,中断等)
  • 读取,写入和刷新数据
  • 等待活动
  • 获取错误信息

最初的0.1.0版本由Sigrok项目主动使用,用于支持串行硬件,并且已经打包在几个Linux发行版中.git版本还包括用于获取有关USB串行适配器(VID/PID等)的信息的新API调用.

  • 很棒,除了gnu许可证 (3认同)
  • 许可证是LGPL。我们专门做出了这个决定,因此它也可以用于闭源项目。 (2认同)

Mar*_*off 7

我意识到你说的是C而不是C++,但也许你可以使用Boost Asio的串口并将其编译成一个与你的C应用程序链接的库.它声称与POSIX兼容,OS X是POSIX.


wjw*_*ood 7

这是一个无耻的插件,但我有一个MIT许可的RS-232通信库,可以移植到Windows,Linux和OS X:

http://wjwwood.io/serial/


小智 5

我在麻省理工学院许可下发布了我的:https://github.com/Marzac/rs232

它采用C编程,适用于Windows,Mac和Linux.