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.

[参考译文] TMS570LS1227:Fapi_编 程字节不匹配

Guru**** 2551110 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1567036/tms570ls1227-fapi-programmed-byte-mismatch

器件型号:TMS570LS1227


工具/软件:

您好:

我有一个应用使用 FapiV2.01.01 构建版本 (000830)、在没有 ECC 的情况下对各个字节进行编程(以允许大小小于 8 字节的连续元素)、并且我在使用组 7 (EEPROM) 时看到一些意外行为。

该库在启动时加载到 RAM 中、并将数据存储在 EEPROM 中。  我注意到、写入 EEPROM 的字节中会间歇性地发生某种“损坏“。  我正在编写长度为 1-8 字节之间的各种大小元素、但我会看到较大元素中的 1 或 2 个字节与预期数据不同。  例如、一个 8 字节元素包含一个目标值为 0x4B3E4E61 的字、但在存储器浏览器中写入和看到的实际值为 0x4B3E4E41。  我可以并且已经通过读取并比较 EEPROM 中编程的预期数据与实际数据来主动验证这一点。   

我认为它可能会受到 IQR/FIQ 的影响、但根据我的理解、如果中断要执行某些其他与 FAP 相关的调用、情况只是如此。  我的 IRQ 不进行任何其他 Fapi.调用。   

我认为我遵循 spnu501h 第 6.3 节中定义的建议编程流程。

根据 Fapi_initializeAPI、Fapi_setActiveFlashBank、Fapi_enableEepromBankSectors  或 Fapi_issueProgrammingCommand 等函数的返回值、我无法识别 API 失败 。

如有任何帮助、将不胜感激。  我更希望避免重新写入更高级别的 EEPROM 处理程序、以便在发生感知到的错误写入时重试。   

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

    尊敬的 Jacob:

    我有一个应用程序使用 FapiV2.01.01 构建 (000830)、对没有 ECC 的单个字节进行编程(以允许大小小于 8 字节的连续元素)、并且在使用闪存组 7 (EEPROM) 时看到一些意外行为。

    即使您也使用 ECC、数据字节也仅位于连续位置、因为 ECC 和数据空间不同。

    您可以看到 EEPROM 组 ECC 位于 0xF010_0000 和 0xF013_FFFF 之间

    但是、EEPROM 数据空间位于 0xF020_0000 和 0xF020_FFFF 之间:

    [报价 userid=“548843" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1567036/tms570ls1227-fapi-programd-byte-mismatch

    该库在启动时加载到 RAM 中、并将数据存储在 EEPROM 中。  我注意到、写入 EEPROM 的字节中会间歇性地发生某种“损坏“。  我正在编写长度为 1-8 字节之间的各种大小元素、但我会看到较大元素中的 1 或 2 个字节与预期数据不同。  例如、一个 8 字节元素包含一个目标值为 0x4B3E4E61 的字、但在存储器浏览器中写入和看到的实际值为 0x4B3E4E41。  我可以并且已经通过读取并比较 EEPROM 中编程的预期数据与实际数据来主动验证这一点。   

    我认为它可能会受到 IQR/FIQ 的影响、但根据我的理解、如果中断要执行某些其他与 FAP 相关的调用、情况只是如此。  我的 IRQ 不进行任何其他 Fapi.调用。   

    我认为我遵循 spnu501h 第 6.3 节中定义的建议编程流程。

    根据 Fapi_initializeAPI、Fapi_setActiveFlashBank、Fapi_enableEepromBankSectors  或 Fapi_issueProgrammingCommand 等函数的返回值、我无法识别 API 失败 。

    如有任何帮助、将不胜感激。  我更希望避免重新写入更高级别的 EEPROM 处理程序、以便在发生感知到的错误写入时重试。   

    [/报价]

    在我这边、您是否可以共享代码以进行快速调试?

    --
    此致、
    Jagadish。