PySerial:如何在串行线上发送 Ctrl-C 命令

发布于 2024-11-28 23:38:31 字数 205 浏览 1 评论 0原文

我正在自动化嵌入式板的配置过程。要进入设置屏幕,我需要发送“Ctrl-C”命令。

会中断我在本地运行的进程,KeyboardInterrupt不起作用。我需要发送一个由引导加载程序解释为 Ctrl-C 的值。

我需要发送的价值是多少?

谢谢

I'm automating a configuration process for an embedded board. To enter the setup screen I need to send "Ctrl-C" command.

This is NOT to interrupt a process I'm running locally, KeyboardInterrupt will not work. I need to send a value that will be interpreted by the bootloader as Ctrl-C.

What is the value I need to send?

Thank you

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

梦回梦里 2024-12-05 23:38:31

IIRC,Ctrl-C 是 etx。因此发送\x03

IIRC, Ctrl-C is etx. Thus send \x03.

养猫人 2024-12-05 23:38:31

您应该发送一个 ASCII 代码为 3 的字符:

serial.write('\x03')

You should send a character with the ASCII code 3:

serial.write('\x03')
听风念你 2024-12-05 23:38:31
\x03

这意味着 Ctrl+C 发送的内容是“文本结束”或“中断”。

\x03

Which means 'end of text' or 'break' is what Ctrl+C sends.

回忆那么伤 2024-12-05 23:38:31

Python 不将 ASCII 码视为字符串,而是需要将其编码为字节。所以只需在代码前添加b即可。

serial.write(b'\x03')

我已经用过这里好几次了,救了我的命。

Python doesn't take the ASCII code as a string, it needs to be encoded as bytes. So just add b before the code.

serial.write(b'\x03')

I've used here and saved and saved my life a couple times.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文