linux 安装usb转串口驱动 USB的VID和PID号USB,区别在哪?

您所在的位置:网站首页 安装usb串口驱动的方法有哪些 linux 安装usb转串口驱动 USB的VID和PID号USB,区别在哪?

linux 安装usb转串口驱动 USB的VID和PID号USB,区别在哪?

2024-07-16 14:20| 来源: 网络整理| 查看: 265

1.USB的VID和PID号

USB(UniversalSerialBUS,通用串行总线)合同规定redflag linux,所有的USB设备都有VID(VendorID,供应商辨识码)和PID(ProductID,产品辨识码)。VID由供应商向USB-IF(ImplementersForum,应用者峰会)申请。每位供应商的VID是惟一的,PID由供应商自行决定。主机通过VID和PID来辨识不同设备,按照它们(以及设备的版本号),可以给设备加载或安装相应的驱动程序。VID和PID的宽度都是两个字节的。

了解到VID和PID在一般情况下有两种储存方法,第一种是主控生产商的VID和PID,储存在主控的bootcode中;第二种是设备生产商的VID和PID,该VID和PID储存在主控外部的非易失性储存设备中(EEPROM或Flash)的设备固件中。当USB设备联接主机时,假若固件中有设备生产商的VID和PID,会将该VID和PID报告给主机,而忽视主控生产商的VID和PID。所以理论上一个USB储存设备的VID应当是设备生产商的VID,而不是主控生产商的VID,这两个VID应当是不同的(主控生产商自己生产的设备除外)。

因为VID和PID重复并不会对产品的使用带来严重影响,好多USB设备生产商(山寨厂居多)为了便捷,并不会向USB执行峰会申请自己的VID,而是仍然沿袭主控生产商的VID或随意向产品写入VID和PID;同时,正规厂家只须要申请VID,PID由厂家自行确定,所以存在相同机型的产品,可能采用了不同的主控(商业须要,很正常),而她们的PID是一样的。基于上述缘由,通过VID和PID就不能确切辨识USB设备的主控机型,提醒你们在使用USB设备的过程中须要注意这个问题。

2.usb转并口驱动加载命令sudo/sbin/modprobeftdi_sio2.1.modprobe命令2.1.1.linux中的modules模块

参考:【Linux】Linux基础知识(Linux模块)。

linux 安装usb转串口驱动_linux串口驱动程序_安装usb串口驱动的方法

2.1.2.modprobe命令含意2.2.ftdi_sio模块

│ Symbol: USB_SERIAL_FTDI_SIO [=n] │ │ Type : tristate │ │ Prompt: USB FTDI Single Port Serial Driver │ │ Defined at drivers/usb/serial/Kconfig:153 │ │ Depends on: USB_SUPPORT [=y] && USB_SERIAL [=y] │ │ Location: │ │ -> Device Drivers │ │ -> USB support (USB_SUPPORT [=y]) │ │ -> USB Serial Converter support (USB_SERIAL [=y])

2.3.命令总结2.3.1.命令含意

按照前面的解释,sudo/sbin/modprobeftdi_sio命令就是加载ftdi_sio这个USB转并口驱动模块到内核中linux通配符,这样就能使用RS232的USB转并口设备。

安装usb串口驱动的方法_linux串口驱动程序_linux 安装usb转串口驱动

2.3.2.加载驱动模块同时挂载usb转并口设备

参考:Ubuntu下BeagleBone的USB并口驱动安装(转)

sudo modprobe ftdi_sio vendor=0x0403 product=0xa6d0

输入lsmod查看,可以检测设备有没有挂载上。

linux串口驱动程序_linux 安装usb转串口驱动_安装usb串口驱动的方法

ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_interface", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="a6d0", DRIVER=="", RUN+="/sbin/modprobe -b ftdi_sio" ACTION=="add", SUBSYSTEM=="drivers", ENV{DEVPATH}=="/bus/usb-serial/drivers/ftdi_sio", ATTR{new_id}="0403 a6d0" ACTION=="add", KERNEL=="ttyUSB*", ATTRS{interface}=="BeagleBone", ATTRS{bInterfaceNumber}=="00", SYMLINK+="beaglebone-jtag" ACTION=="add", KERNEL=="ttyUSB*", ATTRS{interface}=="BeagleBone", ATTRS{bInterfaceNumber}=="01", SYMLINK+="beaglebone-serial"

在ubuntu下进行联接linux 安装usb转串口驱动,正常情况下会形成/dev/ttyUSB0和ttyUSB1两个设备。

注意:在/etc/udev/rules.d/目录中创建或编辑.rules文件后,勿必使用以下命令重新加载.rules文件:

sudo udevadm control --reload

安装usb串口驱动的方法_linux串口驱动程序_linux 安装usb转串口驱动

2.4.xsens的MTI-680难以辨识并口问题解决

输入的两句命令如下:

sudo /sbin/modprobe ftdi_sio

echo 2639 0301 | sudo tee /sys/bus/usb-serial/drivers/ftdi_sio/new_id

现今对命令进行剖析:

第一句命令很简单linux 安装usb转串口驱动,就是加载ftdi_sio模块,即ftdi公司的usb转并口驱动模块

第二句命令是和usb挂载相关的,就是申明要挂载的usb设备VID=0x2639,PID=0x0301。这样插入usb的时侯才会辨识这个设备。

注意:

解决Linux下USB设备节点ttyUSB名不固定的问题,生成固定USB转并口设备节点

Linux下/dev和/sys/class的区别



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3