Python을 사용하여 Arduino Uno를 프로그래밍하려고 합니다. 내 Python 버전은 Python 3.8입니다. pyfirmata2를 성공적으로 설치했습니다. 하지만 명령줄에서 pyfirmata2를 가져오려고 하면 다음 오류가 발생합니다.
>>> import pyfirmata2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python38\lib\site-packages\pyfirmata2\__init__.py", line 2, in <module>
from .pyfirmata2 import * # NOQA
File "C:\Python38\lib\site-packages\pyfirmata2\pyfirmata2.py", line 7, in <module>
import serial.tools.list_ports
File "C:\Python38\lib\site-packages\serial\tools\list_ports.py", line 27, in <module>
from serial.tools.list_ports_windows import *
File "C:\Python38\lib\site-packages\serial\tools\list_ports_windows.py", line 127, in <module>
Ports = serial.to_bytes([80, 111, 114, 116, 115]) # "Ports"
AttributeError: module 'serial' has no attribute 'to_bytes'
답변1
이 방법은 유형 to_bytes()
에서 사용할 수 있습니다 int
.
실행 중인 코드에서는 유형이 아닌 것으로 보이지만 serial
해당 메소드 가 없는 int
유형입니다 .module
to_bytes()
어떤 버전을 실행하고 있는지는 밝히지 않았지만 해당 줄을 pyserial
찾을 수 없습니다.Ports = serial.to_bytes([80, 111, 114, 116, 115]) # "Ports"
이 파일의 현재 소스 코드는 다음에서 제공됩니다.pyserial
. 2016년에 이 줄이 제거된 것을 알았습니다.이번 출품으로, 그렇다면 최신 버전으로 pyserial
문제를 해결할 수 있을까요?