首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当您按下"Enter“键时,在Windows HyperTerminal下发送哪些字符

当您按下"Enter“键时,在Windows HyperTerminal下发送哪些字符
EN

Stack Overflow用户
提问于 2014-02-14 10:11:26
回答 1查看 6.1K关注 0票数 0

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

例如,对于HyperTerminal:

代码语言:javascript
复制
> C (then hit Enter)
> Bla bla bla... Answer from the equipment

我在C++上的串行连接:

代码语言:javascript
复制
send("C\n\r");

什么都没发生。它只是在等待“命令的终结”。

在杰夫·阿特伍德博客上读了一些关于LF/CR的文章之后,我尝试了CR + LF的任何可能组合。他们谁也不做这件事。

因此,我的问题是,HyperTerminal将哪些字符序列解释为“输入是输入的,让我们来处理”。

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

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-14 13:20:08

默认情况下,它模拟电传类型,因此在按Enter键时发送回车(ASCII代码0x0d或'\r')。键盘不再像以前的电传类型那样有一个linefeed键,所以您必须按Ctrl+J来生成linefeed (ASCII代码0x0a或'\n')。

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

我已经很久没有修改它了,但是iirc有它的配置,当您按Enter键时,它会告诉它发送一个linefeed或cr+lf。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21776401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档