OSX替代<linux serial.h =“”> </linux>

时间:2014-10-15 05:42:10

标签: c++

目前正在开发一个利用第三方库的程序,该程序库是在linux上编写的,包括<linux/serial.h>。有什么简单的替代方法可以让程序在OSX上运行,还是我必须重写串口代码才能使用另一个库?

1 个答案:

答案 0 :(得分:0)

这取决于您需要多少控制串口。 Linux和MacOS / X都允许您通过文件描述符访问串行端口(通过使用相应的设备路径作为参数对open()进行简单调用获得),因此如果您需要做的只是读取和/或写入字节从/到串口,好像它是一个套接字,你应该没有太大的麻烦。如果你需要做更复杂的事情,比如启用/禁用握手等等,那么事情会更复杂一些。

FWIW我写了一个简单的串口接口classw/header)作为我的网络library的一部分;它适用于Linux,MacOS / X和Windows。如果你愿意,你可以看看它的灵感;请注意,除了枚举可用串行设备列表的方法(GetAvailableSerialPortNames())之外,MacOS / X和Linux实现几乎相同。