Linux FTDI

1.linux内核目前支持FTDI的驱动
2.连接FTDI,ls /dev/tty*
3.链接 ln /dev/ttyUSB0 -s /dev/ftdi
4.ls /dev/ftdi -l

上面这种连接方式,简单,重启后开机要重新链接,最好写个脚本。

有没有其他方式呢?

Refer:
https://www.cnblogs.com/fah936861121/p/6496608.html
挑重点的说一说

/lib/udev/rules.d/50-udev-default.rules
/etc/udev/rules.d/99-usb-serial.rules

ACTION: 事件 (uevent) 的行为,例如:add( 添加设备 )、remove( 删除设备 )。
KERNEL: 内核设备名称,例如:sda, cdrom。
DEVPATH:设备的 devpath 路径。
SUBSYSTEM: 设备的子系统名称,例如:sda 的子系统为 block。
BUS: 设备在 devpath 里的总线名称,例如:usb。
DRIVER: 设备在 devpath 里的设备驱动名称,例如:ide-cdrom。
ID: 设备在 devpath 里的识别号。
SYSFS{filename}: 设备的 devpath 路径下,设备的属性文件“filename”里的内容。
例如:SYSFS{model}==“ST936701SS”表示:如果设备的型号为 ST936701SS,则该设备匹配该 匹配键。
在一条规则中,可以设定最多五条 SYSFS 的 匹配键。
ENV{key}: 环境变量。在一条规则中,可以设定最多五条环境变量的 匹配键。
PROGRAM:调用外部命令。
RESULT: 外部命令 PROGRAM 的返回结果

实例:

USB打印机
我启动我的打印机, 它就被赋予了一个设备节点/dev/lp0. 我对这样的单调的名字不满意并打算使用udevinfo帮我写一个规则来提供一个可选名字:
# udevinfo -a -p $(udevinfo -q path -n /dev/lp0)
  looking at device '/class/usb/lp0':
  KERNEL=="lp0"
  SUBSYSTEM=="usb"
  DRIVER==""
  ATTR{dev}=="180:0"
  looking at parent device '/devices/pci0000:00/0000:00:1d.0/usb1/1-1':
  SUBSYSTEMS=="usb"
  ATTRS{manufacturer}=="EPSON"
  ATTRS{product}=="USB Printer"
  ATTRS{serial}=="L72010011070626380"
我的规则变成了这样:
SUBSYSTEM=="usb", ATTRS{serial}=="L72010011070626380", SYMLINK+="epson_680"

在设备节点被创建或删除时(通常是添加设备或拔出设备时)执行一个脚本
特别针对热插拔的设备,目的是为了在设备连接或者断开时运行一个特定程序. 例如, 你可能想在你的数码相机连到系统时执行一个脚本来自动下载相机里面的所有照片.
例子如下:

KERNEL=="sdb", ACTION=="add", RUN+="/usr/bin/my_program"
规则意思是:匹配一个内核名为sdb的设备,当插入时,执行程序/usr/bin/my_program

Linux FTDI_第1张图片

你可能感兴趣的:(shell-编程,mmu详解)