【问题标题】:How do I connect to a terminal to a serial-to-USB device on Ubuntu 10.10 (Maverick Meerkat)?如何在 Ubuntu 10.10 (Maverick Meerkat) 上将终端连接到串口转 USB 设备?
【发布时间】:2019-06-11 03:00:13
【问题描述】:

我正在尝试将 minicom 连接到通过 USB 转串口适配器连接的串口设备。这是一个 PL2303,从我读过的所有内容来看,不需要额外的驱动程序。该设备被识别为 PL2303。

我是 minicom 的初学者。这是要执行的正确命令吗?还是我需要配置一些东西?

$ sudo minicom --device /dev/ttyUSB0
minicom: cannot open /dev/ttyUSB0: No such file or directory

$ sudo lsusb -v

Bus 002 Device 006: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Device Descriptor:
  bLength                18
  bDescriptorType         1

$ tail /var/log/syslog  #then removed and attached the device.
Mar 13 23:31:49 ubuntu kernel: [807996.786805] usb 2-1: pl2303 converter now attached to ttyUSB0
Mar 13 23:34:44 ubuntu kernel: [808172.155129] usb 2-1: USB disconnect, address 7
Mar 13 23:34:44 ubuntu kernel: [808172.156321] pl2303 ttyUSB0: pl2303 converter now disconnected from ttyUSB0
Mar 13 23:34:44 ubuntu kernel: [808172.156374] pl2303 2-1:1.0: device disconnected
Mar 13 23:34:52 ubuntu kernel: [808179.497856] usb 2-1: new full speed USB device using uhci_hcd and address 8
Mar 13 23:34:52 ubuntu kernel: [808179.785845] pl2303 2-1:1.0: pl2303 converter detected
Mar 13 23:34:52 ubuntu kernel: [808179.872309] usb 2-1: pl2303 converter now attached to ttyUSB0

【问题讨论】:

  • lsusb 的输出在这里基本没用。插入设备时将输出发布到系统日志中。
  • 查看 ls -al /dev/ttyUSB* 的输出可能也很有用,因为它可能不会显示为 0。另请参阅 linux.org/docs/ldp/howto/Serial-HOWTO-11.html
  • 修改为附加日志文件输出确认 /dev/ttyUSB0 为设备。那么为什么 minicom 无法连接到 /dev/ttyUSB0 呢?
  • 有很多可能的问题(udev 正在运行、devfs 是否已安装、是否安装了适当的热插拔脚本),而且它们都与编程无关。您的问题最终将移至 SuperUser.com。
  • 你确定你的minicom支持在命令行指定串口设备吗?我的没有(尽管结果我收到了一条错误消息,而不是你得到的那个)。 ubuntu 文档也没有表明已添加该功能,但它们可能已过时。无论如何,您都可以尝试其中的设置说明:help.ubuntu.com/community/Minicom 还按照 dj_segfault 的建议发布 ls -al /dev/tty/USB*,也许您有一个分层 /dev 并且它们位于子目录中?

标签: linux serial-port usb hardware-interface


【解决方案1】:

首先检查dmesg | grep tty 是否系统识别您的适配器。 然后尝试使用sudo minicom -s 运行minicom,进入“Serial port setup”并将第一行更改为/dev/ttyUSB0

不要忘记使用“将设置另存为 dfl”将配置保存为默认值。它适用于 VirtualBox 上的 Ubuntu 11.04。

【讨论】:

  • 另外,将用户添加到dialout 组,因为您需要对设备的写入权限。
  • 应该是/dev/ttyACM0而不是/dev/ttyUSB0
  • @MatthiasDieterWallnöfer it depends.
【解决方案2】:

每次插入转换器时,您都需要设置权限。 我使用PuTTY 连接。为此,我创建了一个小 Bash 脚本来整理权限并启动 PuTTY:

#!/bin/bash
sudo chmod 666 /dev/ttyUSB0

putty

附:我绝不会建议将权限设置为 777。

【讨论】:

  • 我认为在更改权限之前尝试将您的用户添加到dialout 和/或uucp 组是值得的,因为您可能不再需要这样做了!
  • 我可以添加一个更新:@Vassilis 的答案在今天仍然是正确的(即使在 Ubuntu 20 上也是如此)。如果您有ls -l /dev/ttyUSB0 并查看设备的“组”所有者,那将是您的用户需要添加到哪个组的线索。最后,第 3 列是“nobody”权限,这意味着如果您要破解权限更改,那是您特别不想更改的列(它不会帮助您的用户,并且可能会授予不安全进程的权限,例如您运行的网络服务器)。请参阅:usermod -a -G dialout $USER 代替..
【解决方案3】:

串行端口通信程序moserialgtkterm 提供了一种简单的方法来检查连接和修改/dev/ttyUSB0(或/dev/ttyUSB1!)设置。即使可能只有一个 USB 到 RS232 适配器,n 名称 /dev/ttyUSBn 可以并且确实会定期更改! moserialgtkterm 在选择要使用的合适 port 时,都会在其各自的下拉菜单中显示相关的端口名称。

查看help.ubuntu.com/community/Minicom 了解minicom 的详细信息。

【讨论】:

  • Cutecom 是一款直观的串口监视器。请务必注意设备权限:最好打开它们:chmod 777 /dev/ttyUSB0
【解决方案4】:

长期阅读,第一次帮助;)

我在这里使用 Prolific USB 串行适配器经历了同样的hellish 体验,到目前为止,Linux 是最容易让它工作的。

在 CentOS 上,我不需要安装任何驱动程序等。也就是说,

  • dmesg | grep -i ttydmesg | grep -i usb 向我展示了 /dev/ttyUSB0。
  • screen ttyUSB0 9600 不像在 OSX 中那样对我有用
  • minicom 对我来说是新的,但它抱怨缺少 /dev/modem

但是,这有帮助:https://www.centos.org/forums/viewtopic.php?t=21271

所以安装 minicom (yum install minicom) 然后输入它的设置 (minicom -s)。

然后选择 Serial Port Setup 并将串行设备(选项 A)更改为 /dev/ttyUSB0,或任何您的设备文件,因为每个发行版略有不同。

然后将 Bps(选项 E)更改为 9600,其余应为默认值(8N1 Y N)

保存为默认值,然后只需 minicom 和 Bob 是你的叔叔。

HTH。

【讨论】:

  • 优秀的 SO 写作风格 :)
  • 我可以使用 screen -U /dev/ttyUSB0 115200 连接到 PL2303
【解决方案5】:

我已经用adduser *username* dialout 解决了这个问题。我再也没有遇到过这个错误,尽管以前让它工作的唯一方法是重新启动 PC 或拔下并重新插入 USB 到串行适配器。

【讨论】:

  • 能否请您对您提供的解释添加更多描述?
【解决方案6】:

我得到同样的 minicom 错误,“无法打开 /dev/ttyUSB0:没有这样的文件或目录”

三个注意事项:

  1. 当连接到 Prolific Technology PL2303 USB/串行适配器的串行端口端的设备关闭时,我收到错误消息。打开设备(运行 Linux 的嵌入式控制器)后 minicom 连接正常。

  2. 我必须以超级用户身份运行(即sudo minicom

  3. 有时我必须拔下并重新插入 USB 转串口适配器才能让 minicom 连接到它。

我在 VMware 下运行 Ubuntu 10.04 LTS (Lucid Lynx)(在 Windows 7 上运行)。在这种情况下,请确保设备已连接到 VM 操作系统,方法是右键单击 VMware 窗口右下方的 USB/Serial USB 图标并选择 Connect (Disconnect from Host)。

记得按Ctrl + A 得到minicom 的提示,然后输入X 退出程序。只要退出运行 minicom 的终端会话,进程就会继续运行。

【讨论】:

  • 拔掉和重新插入对我有用,谢谢!
【解决方案7】:

我遇到了完全相同的问题,通过chmod 777 /dev/ttyUSB0 解决了这个问题。我再也没有遇到过这个错误,尽管以前让它工作的唯一方法是重新启动 VM 或拔下并重新插入 USB 到串行适配器。我在 OS X 上运行 Ubuntu 10.04 (Lucid Lynx) VM。

【讨论】:

  • 是的,如果您以普通用户身份运行,权限可能会成为问题。但是请注意,在这个问题中,minicom 使用 sudo 以 root 身份运行。通常,访问权限的首选解决方案是将需要访问权限的用户分配给拥有串行端口设备文件并对其拥有所需权限的组 - 在通常是“拨出”的 Ubuntu 上
  • 有关dialout 组的更多详细信息,请参阅askubuntu.com 上的相关问题。
【解决方案8】:

我建议新手将 PL2303 连接到 Ubuntu,chmod 777 /dev/ttyUSB0(文件权限)并连接到 CuteCom 串行终端。 CuteCom UI 简单直观。如果PL2303一直在广播数据,那么Cutecom会以十六进制格式显示数据

【讨论】:

    【解决方案9】:

    我刚拿到带有模制 PL2302 转换器芯片的 GUC232A 电缆。

    除了将我自己和 br 添加到组 dialout 之外,我在/usr/share/doc/bottlerocket 的 README.Debian 文件中发现了这个有用的提示:

    这个包使用 debconf 来配置 /dev/firecracker 符号链接, 如果您将来需要更改符号链接,请运行以下命令:

    dpkg-reconfigure -pmedium bottlerocket

    然后会提示您输入新的串行端口并修改 符号链接。这是正确使用bottlerocket所必需的。

    我做到了,瞧! Bottlerocket 能够与我的 X-10 通信 设备。

    【讨论】:

      【解决方案10】:

      ubuntu 上的腻子 PL2303无需安装驱动 所以只需要输入命令来启用腻子 须藤 chmod 666 /dev/ttyUSB0 完毕 打开腻子。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-06-03
        • 2013-08-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-01-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多