USB 转串行显示乱码,但在 Windows 10 中不显示

USB 转串行显示乱码,但在 Windows 10 中不显示

我有一个FT232RLUSB 转串行适配器,我将其连接到微控制器 (esp8266 esp-01)。它在 Windows 10 中运行良好,如果我以COM3波特率使用 putty 打开串行通信76800,它会显示预期的输出。但是当我尝试在 Linux 中执行此操作时,我只看到垃圾。

我在 ubuntu 中遵循的步骤如下:

$ dmesg | grep FTDI
[    1.918717] usb 1-1.1: Manufacturer: FTDI
[   10.766450] usbserial: USB Serial support registered for FTDI USB Serial Device
[   10.766485] ftdi_sio 1-1.1:1.0: FTDI USB Serial Device converter detected
[   10.766889] usb 1-1.1: FTDI USB Serial Device converter now attached to ttyUSB0

另外,我已将我的用户添加到dialouttty组,但仍然需要sudo打开串行终端。

sudo usermod -aG dialout username
sudo usermod -aG tty username

接下来我运行sudo putty,选择串行并连接到/dev/ttyUSB0和波特率76800。但每当我重新启动微控制器时(当我应该在串行控制台中获得一些输出时),我只收到垃圾字符。

输出lsusb如下:Bus 001 Device 003: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC

以防万一需要:

$ uname -a
Linux pcname 4.13.0-26-generic #29~16.04.2-Ubuntu SMP Tue Jan 9 22:00:44 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

我猜这与驱动程序有关,但我不知道如何解决它。

更新:我停止使用 Putty 并开始使用python -m serial.tools.miniterm /dev/ttyUSB0 76800,这解决了问题。有人能告诉我为什么吗?这两个程序在串行通信方面的配置有何不同?

相关内容