标签: uart

在没有 kermit 和 lrzsz 的情况下通过串行检索文件

我在定制板上有一个嵌入式 Linux,我想通过其串行端口发送和接收文件。

与该设备进行通信的唯一方式是通过串行,并且该设备在该串行端口上提供了一个控制台。

这个板子kermit既没有busybox rx也没有lrzsz

- 发送文件到远程

我能够按照此线程将文件发送到董事会。

Host side                              Remote side

cat file | base64 > file_b64
                                       cat > file_b64
minicom's ctrlA-S => send 'file_b64'
                                       cat file_b64 | base64 --decode > file
Run Code Online (Sandbox Code Playgroud)

- 从远程获取文件

现在我想从远程系统检索文件。

Minicom 有一个接收文件的工具,但由于我只有串行端口的控制台使用 minicom 在远程端发出命令,我找不到如何去做。

我曾尝试在主机端使用 kermit,但似乎我还需要在远程端使用 kermit。


编辑:

我也尝试反转发送方法,但没有成功,因为我从主机端的串行端口没有收到任何信息。

Host side                              Remote side

                                       cat file | base64 > file_b64
                                       (sleep 10; cat file_b64 > /dev/ttyS0) &
                                       minicom's ctrlA-X => exit minicom
cat /dev/ttyUSB0 > file_b64
Run Code Online (Sandbox Code Playgroud)

无法使用Minicom的接收工具,因为它仅支持 …

file-transfer serial-port serial-console minicom uart

9
推荐指数
2
解决办法
8042
查看次数

树莓派串口

我有一个要写入的显示器。这可以通过串行端口实现。当我使用 USB 到 RS-232 转换器时,那东西就像一个魅力。我什至尝试只使用串行转换器的 RX、TX 和 GND 线,它仍然有效。现在我想在与 Raspberry Pi 配对的小机箱中使用此显示器,因此我没有任何空间用于大型 USB-RS-232 转换器。我试过使用树莓派的内部串口。使用 将其设置为 9600 波特$ sudo stty -F /dev/ttyAMA0 9600。但是当我将它连接到显示器时,它只显示垃圾并且正常的控制命令(使用 RS-232 转换器工作)也不起作用。使用$ sudo minicom -b 9600 -o -D /dev/ttyAMA0并循环 GPIO TX 到 RX,它会在minicom安慰。现在将 GPIO 串行端口循环到 USB-RS-232 转换器的 RX 和 TX 引脚并连接接地并在minicom波特率设置为 9600 的情况下打开两个端口,只是有时在另一个终端上显示一些输出,但是当它显示任何输出时,也只是垃圾。

linux raspberry-pi uart

7
推荐指数
2
解决办法
829
查看次数

如何在 Orange Pi 零上使用 UART 引脚?

我想在 Orange Pi 零上使用 UART1 或 2(见图)。但是当我尝试打开端口时screen /dev/ttyS1

画面终止。

我在这里发现我需要添加"overlays=sun8i-h3-uart1"/boot/armbianEnv.txt但该论坛上有人说该功能尚不受支持。我试过了,但我仍然有同样的问题。

有什么建议?

橙色 Pi 零引脚

uname -a
Linux orangepizero 4.11.9-sun8i #1 SMP Thu Jul 13 16:09:43 CEST 2017 
armv7l armv7l armv7l GNU/Linux
Run Code Online (Sandbox Code Playgroud)

uart armbian

6
推荐指数
1
解决办法
2万
查看次数

内核参数“console”和“earlycon”是指旧硬件吗?

我首先通过研究 的参数发现这一点,earlycon但发现 的选项console看起来几乎相同。两者均如下所示,并取自来源:

从文档中console我们有:

console=    [KNL] Output console device and options.

    tty<n>  Use the virtual console device <n>.

    ttyS<n>[,options]
    ttyUSB0[,options]
        Use the specified serial port.  The options are of
        the form "bbbbpnf", where "bbbb" is the baud rate,
        "p" is parity ("n", "o", or "e"), "n" is number of
        bits, and "f" is flow control ("r" for RTS or
        omit it).  Default is "9600n8".

        See Documentation/serial-console.txt for more
        information.  See
        Documentation/networking/netconsole.txt for …
Run Code Online (Sandbox Code Playgroud)

linux kernel kernel-parameters uart

5
推荐指数
1
解决办法
2万
查看次数

如何为在 bhyve 中运行的 FreeBSD 来宾激活第二个控制台?

背景

我正在运行 FreeBSD 12.1-RELEASE 作为bhyve虚拟机的主机。

我有一个在 VM 中运行的 FreeBSD 12.1-RELEASE 来宾。我想为其配置两个 TTY 级设备。

根据手册页,为了使用两个 TTY 类设备启动 VM,我必须使用类似于以下的命令行选项启动 bhyve:-l com1,/dev/nmdm0B -l com2,/dev/nmdm1B. 然后我应该能够通过这两个带有和的nullmodem 终端连接到来宾。cu -l /dev/nmdm0Acu -l /dev/nmdm1A

问题

第一个命令按预期工作:cu -l /dev/nmdm0A向我显示来宾的主控制台。

然而,第二个命令附加到来宾,但什么也不显示。我希望向我显示一个登录提示,就像切换到另一个 TTY 一​​样。

我错过了什么?


额外细节

  • 来宾是全新安装的 FreeBSD。

  • dmesg | grep uart在guest上的输出如下:

    uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
    uart0: console (115200,n,8,1)
    uart1: <16550 or compatible> port 0x2f8-0x2ff irq 3 on acpi0
    
    Run Code Online (Sandbox Code Playgroud)
  • 我已经尝试hint.uart.1.flags …

freebsd virtual-machine tty serial-console uart

5
推荐指数
1
解决办法
267
查看次数

socat - UART 日志记录和重定向

我目前正在尝试记录来自 /dev/ttyUSB0 的所有通信,同时能够将 minicom/screen 连接到同一设备进行交互。

我尝试了几个工具和教程,但它们似乎都占用了设备,所以我无法使用终端程序连接到它。

然后我遇到了socat。这听起来很有希望,尽管它能够将 /dev/ttyUSB0 重定向到 PTS 并将传输的数据记录到文件中。

这个想法是:

硬件 - /dev/ttyUSB0 <---> socat/logging <---> /dev/ptyX <---> minicom

以前有人这样做过吗?

任何帮助表示赞赏。克里斯

tty minicom pty socat uart

3
推荐指数
1
解决办法
8080
查看次数

从用户空间设置终端的波特率有什么含义?

有时我只需要从串行设备读取,所以我跳过了minicomorscreen和 just的复杂性cat。但是,这仅在我stty <baud>尝试打开文件之前首先设置终端的波特率时才有效。

该数据可能已经(或可以)缓存在内核中,在这种情况下,是使用UART 到 USB 桥接器接收的。USB 传输速率对于给定标准是固定的,因此设置波特率只会影响数据的解释。鉴于我对这些数据在 USB 数据包中的外观缺乏了解,我不确定如何以某个固定读取速率(波特率)可视化 USB 数据包数据的“解释”。

$ stty 115200
$ cat /dev/ttyACM0
Run Code Online (Sandbox Code Playgroud)

这里到底发生了什么?我了解此设置在硬件中的含义,但它在用户空间软件中意味着什么?

usb devices stty uart

3
推荐指数
1
解决办法
1241
查看次数