linux支持usb打印机,不用驱动

配置CONFIG_USB_PRINTER=y

inux内核默认运行打印机 核 驱动,直接在配置上CONFIG_USB_PRINTER=y添加上去就好了。
make menuconfig 选上USB打印机选项:
       Device Drivers  --->
                      [*] USB support  ---> 
                                   <*>   USB Printer support      
插入打印机就可以看到/dev/usb/lp0设备节点了

插入打印机有如下打印,证明节点生成,识别设备

:/dev/usb # [  325.064966@0] usb 1-1: new high-speed USB device number 3 using xhci-hcd
[  325.235362@2] usblp 1-1:1.1: usblp0: USB Bidirectional printer dev 3 if 1 alt 0 proto 2 vid 0x03F0 pid 0x5817

:/dev/usb # 
/dev/usb # ls -al
total 0
drwxr-xr-x  2 root root       80 2018-01-16 20:42 .
drwxr-xr-x 18 root root    14160 2018-01-16 20:39 ..
crw-------  1 root root 180,   0 2018-01-16 20:42 lp0
lrwxrwxrwx  1 root root       12 2018-01-16 20:42 usbmisc1-1:1.1 -> /dev/usb/lp0
sudo cat 文件名 > /dev/usb/lp0

上层都是操作/dev/usb/lp0 、/dev/usblp0或/dev/lp0这个节点,USB设备都是要自报家门的。usb协议中有专门的打印协议,内核是「不生产信息只是软硬件之间的搬运工」 使用内核的usblp.c只是因为它是个通道,不是目的,目的是将数据传输给打印机。

猜你喜欢

转载自blog.csdn.net/wxh0000mm/article/details/88870630