与上位机测试通过
This commit is contained in:
@@ -86,7 +86,7 @@ class utcp:
|
||||
|
||||
|
||||
|
||||
|
||||
# 生成一个任务的参数
|
||||
def scheme_task_to_byte(j:json):
|
||||
data=bytearray()
|
||||
data.append(j["TaskID"])
|
||||
@@ -99,6 +99,7 @@ def scheme_task_to_byte(j:json):
|
||||
data.append(i>>8)
|
||||
return data
|
||||
|
||||
# 生成任务参数序列
|
||||
def scheme_tasks_to_byte(j:json):
|
||||
data=bytearray()
|
||||
for i in j["TaskArray"]:
|
||||
@@ -109,7 +110,7 @@ def scheme_tasks_to_byte(j:json):
|
||||
data.append(0xff)
|
||||
return data
|
||||
|
||||
|
||||
# 生成任务id序列
|
||||
def scheme_taskids_to_byte(j:json):
|
||||
t=bytearray()
|
||||
t.append(j["PlanID"]&0xff)
|
||||
@@ -124,7 +125,7 @@ def scheme_taskids_to_byte(j:json):
|
||||
t.append(0xff)
|
||||
return t
|
||||
|
||||
|
||||
# 根据方案生成小板用的字节数据
|
||||
def scheme_to_byte(j:json):
|
||||
t=bytearray()
|
||||
t+=scheme_taskids_to_byte(j)
|
||||
@@ -142,7 +143,7 @@ def arr_from_int(num:int):
|
||||
return bytearray([num&0xff,(num>>8)&0xff,(num>>16)&0xff,(num>>24)&0xff])
|
||||
|
||||
|
||||
# 先max后min
|
||||
# 提取方案中的范围数据, 先max后min
|
||||
def scheme_get_task_range(j:json):
|
||||
t=bytearray()
|
||||
return_count=j["ReturnCount"]
|
||||
@@ -155,7 +156,7 @@ def scheme_get_task_range(j:json):
|
||||
t+=arr_from_int(0)
|
||||
return t
|
||||
|
||||
|
||||
# 根据方案生成主板用的字节数据
|
||||
def scheme_to_host(j:json):
|
||||
t=bytearray()
|
||||
t+=arr_from_int(j["PlanID"])
|
||||
@@ -212,6 +213,7 @@ class handle:
|
||||
print("send done.")
|
||||
return bytearray()
|
||||
|
||||
# 设置要发送的文件
|
||||
def set_file(self,name:str):
|
||||
self.data=bytearray()
|
||||
with open(name,"rb") as f:
|
||||
@@ -222,6 +224,8 @@ class handle:
|
||||
self.sent_bytes=0
|
||||
self.packet_now=0
|
||||
self.packet_bytes=200
|
||||
|
||||
# 设置要发送的方案
|
||||
def set_json(self,name:str):
|
||||
self.data=bytearray()
|
||||
with open(name,"rb") as f:
|
||||
@@ -355,17 +359,17 @@ class protu(QObject):
|
||||
t=self.decode(data)
|
||||
|
||||
self.recv_data+=t
|
||||
print("recv",t.hex(","))
|
||||
# print("recv",t.hex(","))
|
||||
self.recv_signal.emit(self.cmd,t,self.str_err)
|
||||
# self.send_file_next(self.cmd,t,self.str_err)
|
||||
print("sent signal---")
|
||||
# print("sent signal---")
|
||||
data.clear()
|
||||
# else:
|
||||
# print("len(data)={d1},num_ro_recv={d2}".format(d1=len(data),d2=self.num_to_recv))
|
||||
def send(self,cmd:int,data:bytearray):
|
||||
self.cmd=cmd
|
||||
self.cmd_no+=1
|
||||
print("send:",data.hex(","))
|
||||
# print("send:",data.hex(","))
|
||||
self.ser.write(self.encode(data))
|
||||
def start_recv(self):
|
||||
self.thread_ = threading.Thread(target=self.recv, args=())
|
||||
|
@@ -355,7 +355,7 @@ class updata_dlg(QObject):
|
||||
except Exception as e:
|
||||
pass
|
||||
def recv_slot(self,cmd:int,data:bytearray,err:str):
|
||||
print("recv:",cmd,data)
|
||||
# print("recv:",cmd,data)
|
||||
if(self.cmd!=cmd):
|
||||
return
|
||||
try:
|
||||
|
Reference in New Issue
Block a user