[PYTHON] [PySerial] Was ist zu beachten, wenn ein "Port konnte nicht geöffnet werden" / dev / cu. "Während der seriellen Kommunikation mit micro: bit tritt ein Fehler auf

Dies ist ein Memorandum of Remedy, wenn der folgende Fehler auftritt, wenn eine serielle Kommunikation mit micro: bit unter Verwendung von pySerial durchgeführt wird.

Traceback (most recent call last): File "/usr/local/lib/python3.8/site-packages/serial/serialposix.py", line 265, in open self.fd = os.open(self.portstr, os.O_RDWR | os.O_NOCTTY | os.O_NONBLOCK) FileNotFoundError: [Errno 2] No such file or directory: '/dev/cu.usbmodem14302'

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "testSerial.py", line 4, in ser = serial.Serial(port,115200,timeout=None) File "/usr/local/lib/python3.8/site-packages/serial/serialutil.py", line 240, in init self.open() File "/usr/local/lib/python3.8/site-packages/serial/serialposix.py", line 268, in open raise SerialException(msg.errno, "could not open port {}: {}".format(self._port, msg)) serial.serialutil.SerialException: [Errno 2] could not open port /dev/cu.usbmodem14302: [Errno 2] No such file or directory: '/dev/cu.usbmodem14302'

Fehler beim Öffnen der seriellen Arduino-Schnittstelle

Es ist möglich, dass der USB-Anschluss aufgrund des Fehlers "Port konnte nicht geöffnet werden" verwendet wird. In meinem Fall war es **, weil ich den seriellen Arduino-Monitor geöffnet hatte **.

Im geschlossenen Zustand war die serielle Kommunikation erfolgreich.

Schließlich

Es scheint, dass dieser Fehler aus der Perspektive von ** behoben werden kann. Tut es nicht etwas, das die serielle Schnittstelle belegt, wie den seriellen Monitor von Arduino **?

Python-Seite

testSerial.py


import serial

mac='/dev/cu.usbmodem14302'
ser = serial.Serial(port,115200,timeout = None)
ser.write(b'1')
time.sleep(1)
ser.close()

micro: bit Seite (JavaScript)

receiveSerial.js


serial.setBaudRate(BaudRate.BaudRate115200)
basic.forever(function () {
    str = serial.readString()
    if (str.indexOf("1") >= 0) {
        basic.showIcon(IconNames.Heart)
    }
})

Recommended Posts

[PySerial] Was ist zu beachten, wenn ein "Port konnte nicht geöffnet werden" / dev / cu. "Während der seriellen Kommunikation mit micro: bit tritt ein Fehler auf
Was tun, wenn in GAE "Typfehler: muss _socket.socket sein, nicht Socket" angezeigt wird
[virtualbox] Was tun, wenn [Spiegelliste nicht abgerufen werden konnte] angezeigt wird, wenn ein yum-Update unter CentOS7 durchgeführt wird?
Was tun, wenn bei der Installation von CentOS auf VirtualBox die Meldung "Die Sitzung konnte nicht geöffnet werden" angezeigt wird
Versuchen Sie die Kommunikation mit einem bestimmten Host / Port unter Linux (/ dev / tcp / hostname / port).
[Docker] Was tun, wenn ein Fehler aufgetreten ist? Der Binär-Git wurde nicht gefunden
Was tun, wenn bei Verwendung von ts-node-dev unter Linux der Fehler "ERR_FEATURE_UNAVAILABLE_ON_PLATFORM" angezeigt wird?