PySerial:如何在串行线上发送 Ctrl-C 命令
我正在自动化嵌入式板的配置过程。要进入设置屏幕,我需要发送“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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
IIRC,Ctrl-C 是
etx
。因此发送\x03
。IIRC, Ctrl-C is
etx
. Thus send\x03
.您应该发送一个 ASCII 代码为 3 的字符:
You should send a character with the ASCII code 3:
这意味着 Ctrl+C 发送的内容是“文本结束”或“中断”。
Which means 'end of text' or 'break' is what Ctrl+C sends.
Python 不将 ASCII 码视为字符串,而是需要将其编码为字节。所以只需在代码前添加b即可。
我已经用过这里好几次了,救了我的命。
Python doesn't take the ASCII code as a string, it needs to be encoded as bytes. So just add b before the code.
I've used here and saved and saved my life a couple times.