def _writes(self, addr, values):
values = values[:65535 - 2]
length = len(values)
header = b'w' + bytes(bytearray([0,
length & 0xFF,
(length >> 8) & 0xFF,
addr & 0xFF,
(addr >> 8) & 0xFF,
(addr >> 16) & 0xFF,
(addr >> 24) & 0xFF]))
# send header+body
self.socket.send(header +
np.array(values, dtype=np.uint32).tobytes())
if self.socket.recv(8) == header: # check for in-sync transmission
return True # indicate successful write
else: # error handling
self.logger.error("Error: wrong control sequence from server")
self.emptybuffer()
return None
评论列表
文章目录