使用状态机增加了初始状态和故障状态,编写了gui调试程序

This commit is contained in:
zjk
2025-01-02 18:28:47 +08:00
parent d9d715326a
commit d2961cf005
19 changed files with 1085 additions and 196 deletions
+43 -1
View File
@@ -81,7 +81,7 @@ class msg_CcuStateFbMsg:
self.placeholder3 = 0x00
self.placeholder4 = 0x00
self.placeholder5 = 0x00
self.checkCode = 0x00
self.checkCode = 0x00
def pack(self):
# 初始化数据
@@ -481,7 +481,49 @@ class msg_disLowBusFbMsg:
checkCode_L = self.checkCode & 0xFF
data += struct.pack('<B', checkCode_L)
return data
class msg_disHVBCmd:
def __init__(self):
self.start1 = None
self.start2 = None
self.id = None
self.length = None
self.fuelCellCircuitBreaker = None
self.powerLithiumBatteryCircuitBreaker = None
self.propulsionMotorCircuitBreaker = None
self.lithiumBatteryGroupInstrumentCircuitBreaker = None
self.dcDc5ModuleCircuitBreaker = None
self.bowHighVoltageDistributionBoxCircuitBreaker = None
self.sternFTDevice45CircuitBreaker = None
self.sternRudderSwitch1CircuitBreaker = None
self.sternRudderSwitch2CircuitBreaker = None
self.fbReservedCircuitBreaker = None
self.tyzReservedCircuitBreaker = None
self.reservedCircuitBreaker = None
self.checkCode = None
def unpack(self,data):
try:
unpacked_data = struct.unpack('<BBHHBBBBBBBBBBBBB',data)
self.start1 = unpacked_data[0]
self.start2 = unpacked_data[1]
self.id = unpacked_data[2]
self.length = unpacked_data[3]
self.fuelCellCircuitBreaker = unpacked_data[4]
self.powerLithiumBatteryCircuitBreaker = unpacked_data[5]
self.propulsionMotorCircuitBreaker = unpacked_data[6]
self.lithiumBatteryGroupInstrumentCircuitBreaker = unpacked_data[7]
self.dcDc5ModuleCircuitBreaker = unpacked_data[8]
self.bowHighVoltageDistributionBoxCircuitBreaker = unpacked_data[9]
self.sternFTDevice45CircuitBreaker = unpacked_data[10]
self.sternRudderSwitch1CircuitBreaker = unpacked_data[11]
self.sternRudderSwitch2CircuitBreaker = unpacked_data[12]
self.fbReservedCircuitBreaker = unpacked_data[13]
self.tyzReservedCircuitBreaker = unpacked_data[14]
self.reservedCircuitBreaker = unpacked_data[15]
self.checkCode = unpacked_data[16]
except struct.error as e:
print(f"Error unpacking data: {e}")
if __name__ == "__main__":
msg = msg_CcuStateFbMsg()