OSX版本的Linux&dev / usb / lp0是什么?

时间:2014-08-10 19:47:43

标签: linux macos usb device

我正在写一根centronics电缆,并通过一个简单的缓冲电池闪烁一些LED"电路。

我能够通过引用Ubuntu机器上/ dev / usb / lp0上的设备位置的C代码写出这些位。

但是,我希望能够在OSX Mavericks上做到这一点。我没有像在Linux中那样看到相同类型的设备文件。

即。在Linux上是否有/ dev / usb / lp0的OSX模拟?

非常感谢。

1 个答案:

答案 0 :(得分:-1)

在“一切都是文件”的概念下,lp0只是一个允许对设备进行原始访问的特殊文件,在这种情况下是第一个并行设备的“特殊字符文件”。如果存在与设备匹配的驱动程序或类似/dev/parport0的内容,则OSX上也会存在相同的情况。 OSX虽然拥有非常有限的并行驱动程序集合。你可以尝试捏造它 - 创建一个'字符'设备文件,用mknod指向一个通用的并行驱动程序。

e.g。 mknod lp0 c x y其中x和y是设备类型的主要和次要数字。通常,您可以在linux上的documentation/devices.txt文件中找到这些数字,但不确定此信息在OSX上的位置。

我见过设备使用通用打印机驱动程序来处理这个问题,例如“小工具打印机”: https://www.kernel.org/doc/Documentation/usb/gadget_printer.txt

(我最初的假设)

在这种情况下,设备实际上会在系统上显示为打印机。您可以使用CUPS实用程序(如lpstat:

)查找打印机列表及其位置

https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/lpstat.1.html#//apple_ref/doc/man/1/lpstat

还有环境变量 LPDEST PRINTER ,它们应列出默认的打印位置:

echo $LDPEST