为了使廉价的CNC机器正常工作,我必须通过并行端口进行连接。不幸的是,我无法使并行端口正常工作。
似乎已检测到PCI并行端口卡,但无法实现向它传输/连接任何东西。
如何使并口工作?
如何使并行端口具有正常的用户权限?
编辑该端口似乎仅在root特权下才能工作。这可能是问题所在。但是,如何使并行端口对普通用户起作用?
。
注意:我的机器是带有RT内核4.9的Debian Linux。
我所做的尝试:
PCI并行卡已插入我的计算机。
运行$lsmod |grep ppdev
返回似乎正确的结果:
ppdev 20480 2
parport 49152 3 lp,parport_pc,ppdev
运行$lspci -v
返回信息,但我不完全了解:
03:01.0 Parallel controller: MosChip Semiconductor Technology Ltd. PCI 9865 Multi-I/O Controller (prog-if 03 [IEEE1284])
Subsystem: Device a000:2000
Flags: bus master, medium devsel, latency 32, IRQ 22
I/O ports at dc00 [size=8]
I/O ports at d880 [size=8]
Memory at fcfff000 (32-bit, non-prefetchable) [size=4K]
Memory at fcffe000 (32-bit, non-prefetchable) [size=4K]
Capabilities: <access denied>
Kernel driver in use: parport_pc
和更多数据:$ dmesg |grep parport
(注意:我在单个并行端口上)返回
[ 11.791907] parport_pc 00:02: reported by Plug and Play ACPI
[ 11.791998] parport0: PC-style at 0x378 (0x778), irq 5 [PCSPP,TRISTATE,EPP]
[ 11.888153] lp0: using parport0 (interrupt-driven).
[ 11.888949] parport1: PC-style at 0xdc00, irq 22 [PCSPP,TRISTATE,EPP]
[ 11.984195] lp1: using parport1 (interrupt-driven).
我从此处下载了一个测试应用程序,该应用程序是在没有root权限的情况下从命令行运行的。它以红色显示所有的输出引脚,并以绿色显示所有的输入引脚。按下输出针时,它会变为绿色,但我怀疑这没有任何意义。
最后,最终的试验:我连接到并行端口之间的LEDGND
和PIN_02
(具有1K欧姆的电阻器)。如果我将其连接到BUZY
(默认情况下处于打开状态),则led指示灯会亮起,但PIN_01
即使连接到,也不会点亮,即使在按下测试应用程序中的按钮时也是如此。
从所有这些测试中,我怀疑该卡已正确安装,但是由于某些许可或其他错误配置,它无法正常工作。
我尝试使用root admin运行PortTest,但似乎对此不满意。
问题出在并行端口的特权上:默认情况下,只有组的用户才能访问它lp
。root
显然可以允许该用户使用,但普通用户则不允许。
将用户添加到lp
组中后,无需sudo即可访问并行端口:
adduser <user-name> lp
在那之后,并行端口正在工作,我可以继续配置。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句