积累更新;

This commit is contained in:
何 泽隆
2024-09-24 11:19:49 +08:00
parent 4897d17d11
commit 6ae08d96e3
4 changed files with 347 additions and 55 deletions

View File

@@ -256,12 +256,14 @@ def find_frame_modbus(buffer, address, frame_defines: dict=frame_modbus):
for i in range(len_buffer):
if buffer[i] != address:
continue
if buffer[i+1] not in frame_defines.keys():
if (buffer[i+1] & 0x7F) not in frame_defines.keys():
continue
frame_define = frame_defines[buffer[i+1]]
frame_define = frame_defines[buffer[i+1] & 0x7F]
j = frame_define[0]
if frame_define[1] == 0:
if buffer[i+1] & 0x80:
j = 5
elif frame_define[1] == 0:
pass
elif frame_define[1] == 1:
j += buffer[i+frame_define[2]]
@@ -286,9 +288,9 @@ def find_frame_dlt645(buffer, address: list):
pos_frame, len_frame = 0, 0
for i in range(len_buffer):
if buffer[i] != 0x68 or buffer[i+8] != 0x68:
if buffer[i] != 0x68 or buffer[i+7] != 0x68:
continue
if buffer[i+1] != bytearray(address):
if address[0] != 0xAA and buffer[i+1:i+7] == bytes(address):
continue
j = buffer[i+9] + 12