【问题标题】:How to send characters in PuTTY serial communication only when pressing enter?如何在 PuTTY 串行通信中仅在按 Enter 时发送字符?
【发布时间】:2011-02-15 02:05:06
【问题描述】:

我正在尝试使用PuTTY 通过我计算机的串行线路进行通信。我已经配置了正确的串行线、波特率、数据位数、停止位、奇偶校验和流控,并建立了连接。当我单击“确定”打开连接时,我看到一个黑屏,并且我的每个按键都被发送而不显示在屏幕上(窗口保持黑色)。如何配置 PuTTY 使其仅在我按 Enter 后发送我的命令或操作码?

我在大学期间使用 PuTTY 进行 Telnet / SSH,它总是显示我的命令,并且只有在我按下回车键后才输入它们,所以我有点困惑。

【问题讨论】:

    标签: serial-port putty virtual-serial-port


    【解决方案1】:

    您需要的设置是左侧“终端”类别下的“本地回显”“行编辑”。 p>

    要让字符在您输入时显示在屏幕上,请将“本地回显”设置为“强制开启”

    要让终端在您按 Enter 之前不发送命令,请将“本地行编辑”设置为 “强制打开”

    说明:

    来自 PuTTY 用户手册(通过单击 PuTTY 中的“帮助”按钮找到):

    4.3.8‘本地回声’

    禁用本地回显后,您在 PuTTY 窗口中键入的字符不会被 PuTTY 在窗口中回显。它们只是被发送到服务器。 (服务器可能会选择将它们回显给您;这无法通过 PuTTY 控制面板进行控制。)

    某些类型的会话需要本地回显,而很多不需要。在其默认模式下,PuTTY 将自动尝试推断本地回显是否适合您正在工作的会话。如果您发现它做出了错误的决定,您可以使用此配置选项来覆盖它的选择:您可以强制本地回显打开,或者强制关闭,而不是依赖自动检测。

    4.3.9 ‘本地行编辑’ 通常,您在 PuTTY 窗口中键入的每个字符都会在您键入时立即发送到服务器。

    如果您启用本地行编辑,这会改变。 PuTTY 将允许您在本地一次编辑一整行,并且该行仅在您按 Return 时才会发送到服务器。如果出现错误,可以在按 Return 之前使用 Backspace 键更正,服务器将永远不会看到错误。

    由于很难在本地编辑一行而看不到它,因此本地行编辑主要与本地回显结合使用(第 4.3.8 节)。这使其非常适合在原始模式或连接到 MUD 或通话器时使用。 (虽然一些更高级的 MUD 偶尔会打开本地行编辑并关闭本地回显,以便接受用户的密码。)

    某些类型的会话需要本地行编辑,而很多不需要。在其默认模式下,PuTTY 将自动尝试推断本地行编辑是否适合您正在工作的会话。如果您发现它做出了错误的决定,您可以使用此配置选项来覆盖它的选择:您可以强制打开本地行编辑,或者强制关闭,而不是依靠自动检测。

    当为这些选项启用“自动”时,Putty 有时会做出错误的选择,因为它会尝试检测连接配置。应用于串行线,这有点棘手。

    【讨论】:

    • 谢谢!这行得通。一旦获得特权,我一定会投票!
    • 为了帮助别人,您能说一下哪些设置为您解决了这个问题吗?
    • 我有一个双 ssh 连接,首先连接到公共服务器,然后连接到私有服务器,这使得连接非常慢。所以,我将Local echo 设置为Force off,将Local line editing 设置为Auto。这对我有用,
    • 当连接到每次按键都需要直接通信的设备时,与在按下Enter key 后发送字符串相反,Local line editing 需要转为Off。我看不出Local echo 会如何影响设备,因为该选项是本地控制台仅显示选项。
    • 将这些设置为强制对我有用。我还用一个名称保存了我的会话,因此每次我想用串行运行腻子会话时都不必更改它。
    猜你喜欢
    • 2012-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多