PySerial [Error 5] Access is Denied

前端 未结 5 1962
不思量自难忘°
不思量自难忘° 2021-01-05 08:40

I am trying to write a program in Python that will loop to keep checking the serial port (COM4) and print out a message when the character \"1\" is read from the serial port

相关标签:
5条回答
  • 2021-01-05 08:49

    For me the solution didn't work but what worked was closing all the applications that were interacting with the given com port.

    0 讨论(0)
  • 2021-01-05 08:51

    UPDATE: This is apparently no longer possible in PySerial 3.0.

    Under Windows, I've always used the port=<int> approach with success.

    I.e. change your code to:

    c = serial.Serial(3, 9600)
    
    0 讨论(0)
  • 2021-01-05 09:03

    Please, take care with the python versions.

    From the pyserial manual about: class serial.Serial https://pyserial.readthedocs.io/en/latest/pyserial_api.html#classes

    ...........

    The port is immediately opened on object creation, when a port is given. It is not opened when port is None and a successive call to open() is required.

    port is a device name: depending on operating system. e.g. /dev/ttyUSB0 on GNU/Linux or COM3 on Windows.

    ............

    Changed in version 3.0: numbers as port argument are no longer supported

    0 讨论(0)
  • 2021-01-05 09:10

    For Python 2.6 use the zero-based COM port index. For Python 2.7.x you can use the full name "COM4". From my experience it's better to use the 2.7 version. Install Python 2.7.x and Setup Tools (aka Easy Install). Once you've got this, install pyserial module by typing easy_install -U pyserial (see pyserial installation doc).

    Remember to add python path to PATH environmental variable.

    0 讨论(0)
  • 2021-01-05 09:10

    that works with PORT COM N-1 in python (N is your number of COM)

    0 讨论(0)
提交回复
热议问题