Update mik32_spifi.py

Переключаем флеш-память из QPI в SPI режим перед прошивкой.
This commit is contained in:
spam-receiver 2024-07-17 00:31:34 +03:00 committed by GitHub
parent 43ea7057b7
commit 1afa1cfc13
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -146,6 +146,8 @@ SECTOR_ERASE_COMMAND = 0x20
WRITE_ENABLE_COMMAND = 0x06
WRITE_DISABLE_COMMAND = 0x04
DISABLE_QPI_COMMAND = 0xFF
MEM_CONFIG_COMMAND = 0x61
MEM_CONFIG_VALUE = 0x7F
@ -373,6 +375,12 @@ def spifi_wait_busy(openocd: OpenOcdTclRpc):
break
def spifi_chip_disable_qpi(openocd: OpenOcdTclRpc):
#print("Sending 'Disable QPI' command to external flash chip in QPI mode.", flush=True)
spifi_send_command(openocd, DISABLE_QPI_COMMAND,
SPIFI_Frameform.OPCODE_NOADDR, SPIFI_Fieldform.ALL_PARALLEL)
def spifi_chip_erase(openocd: OpenOcdTclRpc):
print("Chip erase...", flush=True)
spifi_send_command(openocd, CHIP_ERASE_COMMAND,
@ -616,6 +624,9 @@ def write_pages(pages: Dict[int, List[int]], openocd: OpenOcdTclRpc, use_quad_sp
openocd.halt()
spifi_init(openocd)
# Выводим микросхему из режима QPI, так как SPIFI здесь будет работать в режиме SPI.
spifi_chip_disable_qpi(openocd)
JEDEC_ID = spifi_send_command(openocd, 0x9F, SPIFI_Frameform.OPCODE_NOADDR, SPIFI_Fieldform.ALL_SERIAL, 3)
print(f"JEDEC_ID {JEDEC_ID[0]:02x} {JEDEC_ID[1]:02x} {JEDEC_ID[2]:02x}")