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.

[参考译文] TMS570LS1224:闪存编程失败

Guru**** 2460850 points
Other Parts Discussed in Thread: TMS570LS0432, TMS570LS1224

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/641188/tms570ls1224-flash-programming-failure

器件型号:TMS570LS1224
主题中讨论的其他器件:TMS570LS0432

成功调用 Fapi_initialzeFlashBanks、选择组0并且不保护所有扇区后、我使用 SPNA148的§3.2.2 (高级 F021闪存 API 擦除/程序使用)中描述的编程序列获得闪存编程错误。 fmstat 中的值为0x00001010时,操作失败。

在 TMS570LS1224和 TMS570LS0432上观察到了这一点。

您能否提供 可能原因的列表?

谢谢、此致、

Daniel Marmier

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

    如果要擦除或编程 Bank0闪存中的任何扇区、请在 SRAM 中执行与闪存 API 相关的代码。

    ;将闪存 API 从闪存复制到 SRAM。


    .def copyAPI 2RAM_
    asmfunc

    copyAPI 2RAM_

    .ref API_load
    FLASH_LOAD .word API_LOAD
    .ref API_run
    FLASH_run .word API_run
    .ref API_size
    FLASH_SIZE .word API_SIZE

    LDR r0、FLASH_LOAD
    LDR R1、FLASH_RUN
    LDR R2、FLASH_SIZE
    添加 R2、R1、R2
    COPY_Loop1:
    LDR r3、[r0]、#4
    结构 R3、[R1]、#4
    CMP R1、R2
    BLT COPY_LOOP1
    BX LR

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

    您好 QJ、

    感谢您的回答、但我不从闪存执行代码。

    您是否知道此错误的其他可能原因?

    谢谢、

    Daniel Marmier

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

    Daniel、您好!

    您可以尝试我的函数进行闪存操作(擦除/编程/读取)吗?

    e2e.ti.com/.../1581.bl_5F00_flash.c

    e2e.ti.com/.../2514.flash_5F00_defines.h

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

    您是否已尝试使用附加的函数擦除/编程闪存? 这些功能在我的工作台上进行了测试。