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.

[参考译文] 编译器/TMS570LS0432:HalCoGen 中的 FEE 示例不能改变 FEE 寄存器

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/607741/compiler-tms570ls0432-fee-example-in-halcogen-could-not-change-registers-of-fee

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

工具/软件:TI C/C++编译器

大家好、TI 工程师

当我使用 HalCoGen 中的 FEE 示例来测试 EEPROM 写入和读取功能时、我找不到应该被保存在 FEE 中的消息。 我的设置是否有任何错误?  

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

    您好、Xinyu、

    HALCoGen 示例是否可以正常工作、因为它没有进行任何修改?

    您提供的信息不足以进行评论。 是否有一个特定的块或所有的块?

    您是否可以邮政编码并发送您正在处理的费用示例? 如果不是、请向我们发送 main 函数和 ti_fee_cfg.c 和 ti_fee_cfg.h 文件。

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

    我只需按照示例文档的步骤操作。 我要做的是确认一些重要信息已保存在费用中。 可以给我一些建议吗?

    此致!

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

    FEE 数据存储在闪存组7 (起始地址为0xf0200000)中。 FEE 数据存储为块。 块包含标头+数据。 这些块存储在闪存组7中。

    请查看 TI FEE 用户指南以了解更多信息(该文档位于 C:\ti\Hercules \HALCoGen\v04.06.01\Docs\TI FEE 用户指南.pdf。)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好、Prathap

    实际上、我想检查闪存组7。 但是、我在 CCS 寄存器列表中找不到该组。 是否有缺失?

    谢谢!

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

    您好、Xinyu、

    请在 CCS 中使用内存浏览器检查 FEE 中的数据。 FEE 的起始地址(组7)为0xf0200000。

    HALCoGen 提供了一个读取/写入 FEE 的示例代码。 示例将1个块数据(8字节:01,02,03,04,05,06,07)写入 FEE。

    前24个字节(8字节*3)是虚拟扇区标头、后8个字节(0xF0200018和0xF020001C)保留。

    以下24个字节(0xF0200020...0xF0200034)是数据块标头。 块数据就在数据块标头0xF0200038、0xF020003C 之后。

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

    我使用名为 example_TI_fee_Write_Read.c 的示例 但是、在存储器浏览器中、所有寄存器编号都是 F。我认为 FEE 尚未写入。 我只需按照示例中的步骤操作。

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

    您好、Xinyu、

    测试最后写入、读取和格式化、因此、如果观察 Format 函数已执行、则看不到任何数据。

    我建议您在 TI_FEE 验证块(BlockNumber);(执行此函数之前)处保留断点。 然后查看存储器窗口。


       /*读取长度未知的块*/
       BlockOffset = 0;
       长度= 0xFFFF;
       oResult=TI_fee_read (BlockNumber、BlockOffset、READ_PTR、Length);
       操作
       {
          TI_fee_MainFunction();
          delay();
          STATUS=TI_FEE _GetStatus (0);
       }
       while (状态!=空闲);

       /*使写入的块无效 */
       TI_fee_InvalidateBlock (BlockNumber);->在此处保留断点
       操作
       {
          TI_fee_MainFunction();
          delay();
          STATUS=TI_FEE _GetStatus (0);
       }
       while (状态!=空闲);

       /*设置组7的格式*/
       TI_FEE 格式(0xA5A5A5A5U);

       while (1);