1

如何在Linux中使用tio连接tty设备esp32

 2 years ago
source link: https://www.myfreax.com/how-to-use-tio-to-connect-tty-device-esp32-in-linux/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

tio是一个简单的TTY终端应用程序,它只有简单的命令行界面,可轻松连接到tty设备以进行基本输入/输出。如果你使用esp32这样的开发板,了解这个将对于非常有用。

在本教程中,我们将说明如何安装和使用tio连接tty设备以及一些选项的说明并解决常见的错误。

tio选项

命令行具有以下选项:

$ tio --help
Usage: tio [<options>] <tty device>

Options:
  -b, --baudrate <bps>        Baud rate (default: 115200)
  -d, --databits 5|6|7|8      Data bits (default: 8)
  -f, --flow hard|soft|none   Flow control (default: none)
  -s, --stopbits 1|2          Stop bits (default: 1)
  -p, --parity odd|even|none  Parity (default: none)
  -o, --output-delay <ms>     Output delay (default: 0)
  -n, --no-autoconnect        Disable automatic connect
  -l, --log <filename>        Log to file
  -m, --map <flags>           Map special characters
  -v, --version               Display version
  -h, --help                  Display help

In session, press ctrl-t + q to quit.

唯一需要详细说明的选项可能是 --no-autoconnect选项。

默认情况下,tio会自动连接到提供的设备(如果存在)。如果设备不存在,它将等待它出现然后连接。如果连接丢失(例如设备断开连接),它将等待设备重新出现然后重新连接。

但是,如果提供了--no-autoconnect选项,tio则将在设备不存在时退出,或者在已建立的连接丢失时退出。

它也具有完整的 bash 自动完成支持。

编译安装tio

$ ./configure
$ make
$ make install

Ubuntu/Debian安装tio

$ apt install tio

Fedora/RHEL安装tio

$ dnf install tio

FreeBSD安装tio

$ cd /usr/ports/comms/tio
$ make install clean

LEDE/OpenWrt安装tio

$ opkg install tio

Arch Linux安装tio

AUR包可在此处获得

$ snap install tio --classic

访问snapcraft.io查看如何为您的发行版安装 snap。

如何使用tio连接到tty设备

使用tio连接最简单的方式就是仅指定tty设备:

tio /dev/ttyUsb0

改变波特率连接到TTY设备

通常不同的设备会有不同通讯波特率,tio默认使用的波特率是115200,如何指定不同的波特率请指定选项:

tio /dev/ttyUsb0 -b 480000

如何解决tty设备权限问题

如果你尝试作为普通用户连接到TTY设备,Linux将会给你抛出一个权限拒绝的错误。如下

can't open device "/dev/ttyUSB0": Permission denied
权限拒绝,不能打开设备

我们可以将当前用户加入dialout组,因为dialout用户tty设备权限。

sudo usermod -a -G dialout $USER

当然你也可以使用root用户连接到TTY设备。如下

sudo tio /dev/ttyUsb0

这种方式通常是不推荐。

Windows wsl连接tty设备

在Windows的wsl中连接tty设备,如果你的设备连接到windows的usb com4端口在wsl将会映射成/dev/ttyS4设备文件。你将会用使用以下命令连接到设备上:

tio /dev/ttyS4

如有问题可以在下面发表评论。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK