gpt4 book ai didi

python - Pyserial 检测中断条件

转载 作者:行者123 更新时间:2023-11-28 19:23:07 25 4
gpt4 key购买 nike

有什么方法可以检测 Pyserial 中的 RS232 BREAK 条件吗?我可以看到发送中断的选项,但没有接收选项。

谢谢

最佳答案

我不知道有什么简单的方法可以做到这一点,尤其是在 python 中,中断是一个事件,应该用于重置通信。

AFAIK pySerial 支持发送 Break,但不支持接收。

您可以使用 WaitCommEvent() 但这并不容易 MSDN WaitCommEvent

来自 MSDN:

WaitCommEvent 函数等待指定通信设备的事件发生。此函数监视的事件集包含在与设备句柄关联的事件掩码中。

BOOL WaitCommEvent(
HANDLE hCommDev, // handle of communications device
LPDWORD lpfdwEvtMask, // address of variable for event that occurred
LPOVERLAPPED lpo, // address of overlapped structure );

hCommDev 标识通信设备。 CreateFile 函数返回此句柄。

lpfdwEvtMask 指向一个 32 位变量,该变量接收一个表示所发生事件类型的掩码。如果发生错误,则值为零;否则,它是以下值之一:

你需要这个事件:

EV_BREAK 检测到输入中断。

你这里有一个 example in c++

关于python - Pyserial 检测中断条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19971355/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com