This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM2434:使用 UART 上的 Python 脚本擦除 SPI 闪存

Guru**** 2448780 points
Other Parts Discussed in Thread: UNIFLASH

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1182226/am2434-erasing-spi-flash-with-python-script-over-uart

器件型号:AM2434
主题中讨论的其他器件:UNIFLASH

客户在 LP EVM 和定制板上遇到相同的问题  

根据指定的擦除大小、结果似乎有所不同。

 

当以十六进制形式指定超过0x200000 (2MByte)的擦除大小时、将发生错误。 但是、如果擦除大小小于指定的值、则会成功。

(此结果在 AM2434-LP 上)

 

尺寸规格是否有任何规格或限制?

 

 命令行日志:

 

setok@workstation ~/ti/mcu_plus_sdk_am243x_08_02_00_31

% python3 tools/boot/uart_uniflash.py --flash-writer=./tools/boot/sbl_prebuilt/am243x-lp/sbl_uart_uniflash.release.tiimage -p /dev/ttyACM0 --operation=erase --flash-offset=0 --erase-size=0x300000

找到闪存写入器... 正在发送./tools/boot/sbl_prebuilt/am243x-lp/sbl_uart_uniflash.release.tiimage

在28.5s 内发送大小为315416字节的 flashwriter ./tools/boot/sbl_prebuilt/am243x-lp/sbl_uart_uniflash.release.tiimage。                                                   

 

发送擦除命令:1031字节[00:11、9302.17字节/s]recv 错误:开始序列中的 getc 超时                                                                      

发送擦除命令:1032字节[00:11、62.39字节/s]^C

[ERROR] XMODEM 恢复失败、EVM 无响应或响应不正确或用户已取消、

       重启 EVM 并再次运行此脚本!!

 

 

setok@workstation ~/ti/mcu_plus_sdk_am243x_08_02_00_31

% python3 tools/boot/uart_uniflash.py --flash-writer=./tools/boot/sbl_prebuilt/am243x-lp/sbl_uart_uniflash.release.tiimage -p /dev/ttyACM0 --operation=erase --flash-offset=0 --erase-size=0x200000

找到闪存写入器... 正在发送./tools/boot/sbl_prebuilt/am243x-lp/sbl_uart_uniflash.release.tiimage

在30.23秒内发送大小为315416字节的 flashwriter ./tools/boot/sbl_prebuilt/am243x-lp/sbl_uart_uniflash.release.tiimage。                                        

已发送闪存擦除命令。                                                                                                                                     

[状态]成功!!!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Lawrence、

    我在 C:\ti\mcu_plus_sdk_am243x_08_04_00_17\source\drivers\bootloader\bootloader_uniflash.c 中检查了 Bootloader_uniflashFlashErase () 唯一可能返回擦除错误的地方是当擦除大小大于闪存大小时:

    eraseBlockSize = flashAttrs->PageCount * flashAttrs->pagesize;
    flashSize = eraseBlockSize * flashAttrs->blockCount;

    if ((status =SystemP_Success)&&(eraseSize > flashSize))

      STATUS=SystemP_FAILURE;

    客户是否可以不使用" --erase-size=0x300000"

    此致、

    Ming