添加pg的bootram; upload flash时自动输入密码

This commit is contained in:
ranchuan
2025-08-12 16:37:36 +08:00
parent c4eee52fb9
commit 3b73d64861
3 changed files with 17 additions and 0 deletions

BIN
bin/bootram_kl4.bin Normal file

Binary file not shown.

View File

@@ -25,6 +25,7 @@ from bin.base import bin_path
from bin.factory_mode import ftm_handle
from bin.crc import CRC16
from bin.get_log import print_log
from password import bootram_pssword
def init_send(s_port:serial.Serial, send_str:str):
@@ -254,6 +255,16 @@ def calc_flash_info_name():
# 计算bootram密码
def calc_bootram_pssword(info_file:str):
with open(info_file,mode='r',encoding='utf-8') as f:
lines=f.readlines()
for line in lines:
if(line.startswith('Chip Id')):
chip_id=line.split(':')[-1].strip()
password=bootram_pssword(chip_id)
return f"{password:08x}"
# 上传固件
def upload_fun():
@@ -264,6 +275,12 @@ def upload_fun():
print_device_str(ser_read_data)
with open(calc_flash_info_name(),mode='w+',encoding='utf-8') as f:
f.writelines(ser_read_data.decode('utf-8').split('\r\n'))
# 输入密码
password=calc_bootram_pssword(calc_flash_info_name())
ser.write(f"PSS {password}\n".encode("utf-8"))
time.sleep(0.5)
ser_read_data=ser.read(4096)
print_device_str(ser_read_data)
# 显示image信息
ser.write(b"f s\n")
time.sleep(1)