win10中带有Pyserial的win32.SetCommState

时间:2018-12-06 10:57:22

标签: python windows-10 pyserial

直到最近,我一直快乐地使用win7 + pythonX和pyserial。 最近我升级到win10,现在在运行一些在win7上工作过的python串行代码时遇到了问题。

不过,我什至可以运行以下简单示例:Full examples of using pySerial package

在所有与pyserial相关的代码上,我得到的都是相同的错误:

  

回溯(最近通话最近):     文件“。\ t.py”,第10行,在       bytesize = serial.SEVENBITS      init 中的文件“ C:\ Python37 \ lib \ site-packages \ serial \ serialwin32.py”,第31行       超级(序列号,自我)。 init (* args,** kwargs)      init 中的文件“ C:\ Python37 \ lib \ site-packages \ serial \ serialutil.py”,第240行       self.open()     打开文件“ C:\ Python37 \ lib \ site-packages \ serial \ serialwin32.py”,行78       self._reconfigure_port()     _reconfigure_port中的文件“ C:\ Python37 \ lib \ site-packages \ serial \ serialwin32.py”,第222行       '原始消息:{!r}'。format(ctypes.WinError()))   serial.serialutil.SerialException:无法配置端口,出了点问题。原始消息:OSError(22,'参数不正确。',无,87)

但是我发现原因是从serialwin32.py调用“ win32.SetCommState(self._port_handle,ctypes.byref(comDCB)):”引发的异常

此调用返回0,表明出了点问题,但是当我将其注释掉后,我可以使串行通信再次正常工作,还有其他人遇到过这种情况吗?知道为什么会这样吗?

0 个答案:

没有答案