升级小板添加结果返回,升级脚本可以修改波特率
This commit is contained in:
@@ -280,7 +280,8 @@ class protu(QObject):
|
||||
if(s[0]=="utcp"):
|
||||
self.ser = utcp(int(s[1]))
|
||||
else:
|
||||
self.ser = serial.Serial(port=s[0], baudrate=115200,bytesize=serial.EIGHTBITS,parity=serial.PARITY_NONE,
|
||||
bsp=int(s[1])
|
||||
self.ser = serial.Serial(port=s[0], baudrate=bsp,bytesize=serial.EIGHTBITS,parity=serial.PARITY_NONE,
|
||||
stopbits=serial.STOPBITS_ONE,timeout=None)
|
||||
except Exception as e:
|
||||
print(str(e))
|
||||
@@ -310,7 +311,7 @@ class protu(QObject):
|
||||
self.str_err="recv data len too less."
|
||||
return bytearray()
|
||||
if(data[0]!=0x59 or data[1]!=0x6d or data[2]!=0x43):
|
||||
print("frame head not 0x59 0x6d.")
|
||||
# print("frame head not 0x59 0x6d.")
|
||||
self.str_err="frame head not 0x59 0x6d."
|
||||
return bytearray()
|
||||
length=data[3]|(data[4]<<8)
|
||||
@@ -331,9 +332,30 @@ class protu(QObject):
|
||||
self.cmd_no=data[6]|(data[7]<<8)
|
||||
self.cmd=data[5]
|
||||
if(self.is_big_data==False):
|
||||
return data[8:-2]
|
||||
return bytearray(data[8:-2])
|
||||
else:
|
||||
return data[12:-2]
|
||||
return bytearray(data[12:-2])
|
||||
# 不带校验的接收函数
|
||||
def recv_(self):
|
||||
while(self.ser.is_open):
|
||||
try:
|
||||
data=self.ser.read(500)
|
||||
except Exception as a:
|
||||
# print("err:",str(a))
|
||||
print("port closed")
|
||||
return
|
||||
if(len(data)>0):
|
||||
t=self.decode(data)
|
||||
if(self.str_err=="ok"):
|
||||
self.recv_data+=t
|
||||
# print("recv",t.hex(","))
|
||||
# print(type(self.cmd),type(t),type(self.str_err))
|
||||
self.recv_signal.emit(self.cmd,t,self.str_err)
|
||||
# self.send_file_next(self.cmd,t,self.str_err)
|
||||
# print("sent signal---")
|
||||
else:
|
||||
print(data.decode("utf-8"))
|
||||
# 带帧校验的接收函数
|
||||
def recv(self):
|
||||
# self.recv_signal.connect(self.send_file_next)
|
||||
data=bytearray()
|
||||
@@ -381,7 +403,7 @@ class protu(QObject):
|
||||
# print("send:",data.hex(","))
|
||||
self.ser.write(self.encode(data))
|
||||
def send_str(self,txt:str):
|
||||
self.ser.write(txt)
|
||||
self.ser.write(txt.encode("utf-8"))
|
||||
def start_recv(self):
|
||||
self.thread_ = threading.Thread(target=self.recv, args=())
|
||||
self.thread_.start()
|
||||
|
Reference in New Issue
Block a user