import struct class BrComMessage: SOH = 0x0A OP_READ = 0 OP_WRITE = 1 RES_READ = 100 RES_WRITE = 101 def __init__(self, operation, addr: int, val: float = 0.0): self.operation = operation self.addr = addr self.val = val def gen_message(self): # 消息内容的组成: # [SOH, operation_code, addr, val, checksum] msg_pre = [self.SOH, self.operation] + \ list(struct.pack('H', self.addr)) + \ list(struct.pack('f', self.val)) + \ [self.compute_checksum()] return msg_pre def compute_checksum(self): _sum = self.SOH _sum += self.operation for a_byte in struct.pack('