通过Win10 over USB / TTL转换器通过python从nextion touchdisplay中读取

问题描述 投票:0回答:1

今天我拼命想在我的python代码中读取nextiondisplay中的值。写它是有效的,但我无法设法让python从中读取。我的代码看起来像这样:

def ser_escape():
    escape='\xff'.encode('iso-8859-1')
    ser.write(escape)
    ser.write(escape)
    ser.write(escape)    

import serial
import pynextion 

EndCom= "\xff\xff\xff"
ser = serial.Serial(port='COM4',baudrate=9600)
test=b't0.txt="MyText"'
ser.write(test)
ser_escape()
ser.flush
ser_escape()

ser.flush
ser.write(b'get t0.txt')
print (ser.read())
ser_escape()
ser.close()

输出只是:b'\x1a'这与预期的行为没有任何关系 - 至少不是来自我。关于这个文件:https://www.itead.cc/wiki/Nextion_Instruction_Set#get:_Get_variable.2Fconstant_value_with_format我应该能够使用"get "variable""来接收存储在那里的信息。

如果有人可以帮助我,我会很高兴。

python windows-10 pyserial nextion
1个回答
0
投票

我自己解决了:对于“获取Start.currentPage.txt”你可以插入任何你想要的变量调用,之后我只是从字符串切下感兴趣的部分来保持,我不需要消息的开头和结尾符号。

import time
from pynextion import PySerialNex

nexSerial=PySerialNex("COM4")

def getActPageName(nexSerial):

    nexSerial.write("get Start.currentPage.txt")
    time.sleep(0.1)
    Var=str(nexSerial.read_all())
    Var=Var[Var.find('p')+1:Var.find('\\')]
    return Var
© www.soinside.com 2019 - 2024. All rights reserved.