You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
20 lines
456 B
20 lines
456 B
def create_control(packer, torque_l, torque_r):
|
|
values = {
|
|
"TORQUE_L": torque_l,
|
|
"TORQUE_R": torque_r,
|
|
}
|
|
|
|
return packer.make_can_msg("TORQUE_CMD", 0, values)
|
|
|
|
|
|
def body_checksum(address: int, sig, d: bytearray) -> int:
|
|
crc = 0xFF
|
|
poly = 0xD5
|
|
for i in range(len(d) - 2, -1, -1):
|
|
crc ^= d[i]
|
|
for _ in range(8):
|
|
if crc & 0x80:
|
|
crc = ((crc << 1) ^ poly) & 0xFF
|
|
else:
|
|
crc = (crc << 1) & 0xFF
|
|
return crc
|
|
|