STM32 - не может открыть последовательный порт из pyserial, но может из ST-Link
Я работаю с STM32 (NUCLEO-L476RG) - загружаю код через Workbench, иногда используя утилиту ST-Link для подключения к нему. Кроме того, у меня есть некоторый код Python, который слушает STM через последовательный порт.
До вчерашнего дня все работало нормально, но сегодня (без изменения каких-либо подключений к STM, драйверам и т. Д.) Pyserial не может подключиться к устройству, показывая сообщение:
File "C:\python37\lib\site-packages\serial\serialwin32.py", line 62, in open raise SerialException("could not open port {!r}: {!r}".format(self.portstr, ctypes.WinError()))
serial.serialutil.SerialException: could not open port 'COM7': FileNotFoundError(2, 'Nie można odnaleźć określonego pliku.', None, 2)
Я могу загрузить код с помощью Workbench или подключиться к STM через ST-Link Utility без каких-либо проблем. Порт не используется никаким другим приложением.
Когда я перечисляю порты по serial.tools.list_ports.comports()
это показывает правильно, как STMicroelectronics STLink Virtual COM Port (COM7)
,
В "Диспетчере устройств" рядом с COM есть желтый треугольник, но я не уверен, что он был там раньше (вероятно, да) - он говорит, что драйвер устройства не подписан.
Я пытался:
- переустановите драйверы к этим, предоставленным STM
- переустановить pyserial
- использовать старый питон
- использовать более старый pyserial
- поменять COM на другой
- заменить кабель на новый
- подключите устройство ко всем возможным портам USB
но все это изменило что-нибудь.
Моя настройка:
- Windows 7
- Python 3.7.1
- pyserial 3.4
- STM 32 NUCLEO-L476RG
- System Workbench для STM32 и ST-Link Utility, которые работают отлично
Эта настройка работала в течение полугода (!), И я ничего не менял за последние пару дней. Единственное, что я сделал вчера, это установил PostgreSQL, но кажется невероятным, что это может вызвать мою текущую проблему...
Заранее благодарю за любую помощь - у меня нет идеи, что мне делать дальше, поэтому я ценю любой совет.