ValueError: "порт" должен быть None или строкой, а не <class 'serial.serialposix.Serial'>
Я не понимаю ошибку, и после 5 часов в поисках решения я, наконец, сдался.
Я пытаюсь открыть последовательное соединение, но, видимо, мой порт не жало?
Один и тот же порт работает нормально в другом куске кода...
НЕ РАБОТАЕТ
import serial
import pynextion
class NextionApp:
def __init__(self):
ser = serial.Serial("/dev/ttyAMA0", 9600, timeout=0)
pages = [
{"id": "0", "name": "page0()page",
"components": [
{"id": "1", "type": "text", "name": "txt_tmp"},
{"id": "3", "type": "text", "name": "txt_hum"},
{"id": "0", "type": "text", "name": "txt_co2"},
{"id": "4", "type": "button", "name": "btn_test"},
]
}
]
self.nextion = pynextion.Nextion(ser, pages)
print("Serial connected")
nextionApp = NextionApp()
ЗА РАБОТОЙ
#!/usr/bin/env python
import time
import serial
ser = serial.Serial("/dev/ttyAMA0", 9600, timeout=1)
counter=0
while 1:
x=ser.readline()
print (x)
1 ответ
Библиотека Python Nexation ожидает получить путь к устройству в качестве входных данных, а не экземпляр serial
объект (он создает это сам). Вам следует позвонить:
self.nextion = pynextion.Nextion("/dev/ttyAMA0", pages)