修复升级包生成结果与打包工具不一致的问题;
- 调换校验方式与压缩方式字节位置; - 调换文件头校验大小端;
This commit is contained in:
@@ -158,15 +158,15 @@ def build_header_new(config: dict):
|
||||
m_file_header[8:10] = config['prod_type']
|
||||
m_file_header[10:22] = config['prog_id'] + [0] * (12 - len(config['prog_id']))
|
||||
if config['method_compress'] == True:
|
||||
m_file_header[22] = 0x01
|
||||
m_file_header[23] = 0x01
|
||||
else:
|
||||
m_file_header[22] = 0x00
|
||||
m_file_header[23] = 0x00
|
||||
|
||||
if 'crc32' in config.keys():
|
||||
m_file_header[23] = 0x00
|
||||
m_file_header[22] = 0x00
|
||||
m_file_header[24: 40] = config['crc32'] + [0x00] * 12
|
||||
elif 'md5' in config.keys():
|
||||
m_file_header[23] = 0x01
|
||||
m_file_header[22] = 0x01
|
||||
m_file_header[24: 40] = config['md5']
|
||||
else:
|
||||
raise Exception("Error, Unknown method verify.")
|
||||
@@ -212,7 +212,7 @@ def build_header_new(config: dict):
|
||||
|
||||
calculator = Calculator(Crc16.MODBUS)
|
||||
code_crc16 = calculator.checksum(m_file_header[:-2])
|
||||
m_file_header[182: 184] = [code_crc16 % 0x100, code_crc16 // 0x100]
|
||||
m_file_header[182: 184] = [code_crc16 // 0x100, code_crc16 % 0x100]
|
||||
|
||||
return m_file_header
|
||||
|
||||
|
||||
Reference in New Issue
Block a user