当您点击“Enter”键时,在Windows HyperTerminal下发送了哪些字符

时间:2014-02-14 10:11:27

标签: c++ windows serial-port ascii hyperterminal

我目前正在Windows下的C ++应用程序中实现串行连接终端。 我通过串行连接使用Windows hyperTerminal与我的设备进行通信。

例如HyperTerminal:

> C (then hit Enter)
> Bla bla bla... Answer from the equipment

在C ++上使用串行连接:

send("C\n\r");
什么都没发生。它只是等待“命令结束”的特征。

在Jeff Atwood博客上阅读了关于LF / CR的一些内容后,我尝试了任何可能的CR + LF组合。他们都没有完成这项工作。

所以我的问题是,HyperTerminal解释为“输入是输入的,让我们处理”是什么序列的特征。

Ps:我的串口连接工作得很好,我现在用两种方式使用它,这方面没有问题。

1 个答案:

答案 0 :(得分:3)

默认情况下它模拟电传打字,因此当您按下Enter键时发送回车符(ASCII码0x0d或'\ r')。键盘没有换行键了,就像以前的远程类型一样,你必须按Ctrl + J来生成换行符(ASCII码0x0a或'\ n')。

记住正常的顺序,首先回车,“\ r \ n”。如果您现在使用send(“C \ n \ r”),则可能需要调整代码。

自从我修改它以来已经太久了但是iirc它有配置告诉它在按Enter键时发送换行符或cr + lf。