如何在设备连接时自动设置波特率?
How to set baud rate automatically when device connects?
我可以随时使用stty -F /dev/ttyUSB0 19200
设置波特率。但我想在插入设备时自动设置它。是否有某种配置文件可以放入?
我在 Ubuntu 14.04 系统上执行此操作。
您可以为此使用 udev
(https://en.wikipedia.org/wiki/Udev )
在 /etc/udev/rules.d
中为您的设备编写一个 udev 规则来执行您想要的 shell 脚本
参见 https://wiki.archlinux.org/index.php/udev 编写 udev 规则。您可以使用 USB vendorID 和 productID 来识别您编写脚本的设备
KERNEL=="sd*", ATTRS{idVendor}=="12ba", ATTRS{idProduct}=="58ea", ATTRS{model}=="XYZ42", ATTRS{serial}=="123465789", RUN+="/pathto/script"
https://unix.stackexchange.com/questions/28548/how-to-run-custom-scripts-upon-usb-device-plug-in
创建一个 udev 规则文件,例如 /etc/udev/rules.d/99-ttyUSB.rules
并将以下行放在那里:
ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="XXXX", ATTRS{idProduct}=="YYYY", RUN+="/bin/stty -F /dev/%k 19200"
分别用您的 vendor/product ID 值替换 XXXX 和 YYYY。您可以通过 运行 lsusb
获得
我可以随时使用stty -F /dev/ttyUSB0 19200
设置波特率。但我想在插入设备时自动设置它。是否有某种配置文件可以放入?
我在 Ubuntu 14.04 系统上执行此操作。
您可以为此使用 udev
(https://en.wikipedia.org/wiki/Udev )
在 /etc/udev/rules.d
中为您的设备编写一个 udev 规则来执行您想要的 shell 脚本
参见 https://wiki.archlinux.org/index.php/udev 编写 udev 规则。您可以使用 USB vendorID 和 productID 来识别您编写脚本的设备
KERNEL=="sd*", ATTRS{idVendor}=="12ba", ATTRS{idProduct}=="58ea", ATTRS{model}=="XYZ42", ATTRS{serial}=="123465789", RUN+="/pathto/script"
https://unix.stackexchange.com/questions/28548/how-to-run-custom-scripts-upon-usb-device-plug-in
创建一个 udev 规则文件,例如 /etc/udev/rules.d/99-ttyUSB.rules
并将以下行放在那里:
ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="XXXX", ATTRS{idProduct}=="YYYY", RUN+="/bin/stty -F /dev/%k 19200"
分别用您的 vendor/product ID 值替换 XXXX 和 YYYY。您可以通过 运行 lsusb