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.

[参考译文] TMS570LS0714 Fapi_initializeFlashBanks 函数的 FEE 问题

Guru**** 2524550 points
Other Parts Discussed in Thread: TMS570LS0714, HALCOGEN

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/980258/the-tms570ls0714-fee-issue-of-fapi_initializeflashbanks-function

主题中讨论的其他器件:TMS570LS0714HALCOGEN

尊敬的 TI:

当我完成 FEE 模块时、我已经被 Fapi_initiataleFlashBanks ((UINT32) TI_FEE 操作频率)的函数停止、TI_FEE 操作频率= 180。

初始化无法传递 Fapi_initializeFlashBanks 函数的函数。 该函数与 TI F021闪存库相关、因此我无法看到该函数的更多详细信息。

那么、您能告诉我有关此函数的一些信息、并帮助我解决这个问题吗?

谢谢、此致、

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

    您好、Zhenzhen、

    TMS570LS0714器件有两种封装:144引脚 PGE 封装和100引脚 PZ 封装。 144引脚 PGE 封装支持高达160MHz 的系统时钟、但100引脚 PZ 封装的最大系统时钟频率为100MHz。

    180MHz 超出了此限制。

    FEE 的等待状态应该被正确设定。 如果系统时钟为160MHz、则 EWAIT 为9。

    请参阅器件数据表 :SPNS226E

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

    您好、王先生、

    "180"来自 TI 名为 FEE Driver_userguide.pdf 的文档。

    请查看此文档、该"180"可能并不意味着系统时钟频率。

    此外、除了此值、是否有任何其他变量会影响此 Fapi_initializeFlashBanks 函数的 returnen 值? e2e.ti.com/.../6052.FEE_5F00_Driver_5F00_userguide.pdf

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

    如果正确选择了正确的封装、则 FeeOperatingFrequency 将变为100MHz。 应正确设置等待状态。

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

    您好、王先生、

    我们已经尝试了180、160、100、它们都 被 Fapi_initializeFlashBanks 函数停止。

    那么、您能给我们提供另一个材料来解决这个问题吗?

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

    您好、Zhenzhen、

    EWAIT 未在 FEE EBTresos 内部配置。 它应该在客户启动代码中进行配置。 如果 HALCoGen 被用作启动代码,它将在 system.c 文件的 setupFlash() API 中进行配置。
    EB GUI 中的 FeeOperatingFrequency 不会使用 PLL 设置自动更新。 您需要手动键入正确的值。  
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我们通过修复 TI Mcal 的错误来解决了 Fapi_initializeFlashBanks 函数的问题。 现在、我们有一个新的 TI_FEE 读取问题。

    当我们调用"TI_fee_read"时、它会显示"TI_fee_GlobalVariables[u8EEPIndex].fee_u16JobResult = block_invalid;"、并且我们已经被这个网络所停止。 同时寄存器值看起来不错、因此我们不知道根本原因是什么。

    我要发布两张图片、但我们不允许您的新网站上传图片、因此我已通过电子邮件将其发送给您。

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

    您好、Zhenzhen、

    是否可以共享组7数据。   使用 CCS 存储器窗口 Save memory 选项将其另存为 COFF 文件。

    BTW、您能告诉我您如何修复 MCAL 驱动程序中的错误吗?

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

    您好 QJ,

    我们已保存组7数据并将其另存为 bank7.out.e2e.ti.com/.../4274.out.zip

    是  存储器的屏幕截图。  

    这是 FEE 的起始代码。

    对于“MCAL 驱动程序中的错误修复”,我们只需使用 Halcogen 来生成有关闪存的代码,并将代码与 MCAL 进行比较,然后您就可以找到相应的内容。

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

    您好、Zhenzhen、

    虚拟扇区为空。 在阅读和书写之前,您是否曾致电 FEE Init (NULL_PTR)和 FEE MainFunction()?

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

    您好 QJ,

    FEE Init ()根据 FEE mcal 建议配置进行设置,FEE _MainFunction ()是回调的周期,FEE 读写周期为1。

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

    在 fee_Init()、fee_WriteAsync ()和 fee_ReadAsync ()之后,必须调用 fee_MainFunction()以完成数据操作。  

    如果在发出 FEE_WriteASYNC()命令后未调用 FEE 函数(),则数据不会更新到 EEPROM 中,并且 FEE_readASYNC()不会返回正确的数据。

    调用 fee_Init()后,FEE 全局变量将更新,但在未运行 fee_MainFunction()的情况下,虚拟扇区的标头不会完全更新(仅更新第一个64位)。  

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

    您好、Zhenzhen、

    我根据您的电子邮件请求重新打开此主题。  

    正如我在上一篇文章中提到的、虚拟扇区是空的。 虚拟扇区中没有数据。 我认为 ,FEE _mainFunction()不是在 FEE Init()和 FEE WriteAsync ()之后调用的。

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

    您好 QJ,

    我们已确认  FEE 主函数()是 RTE.c、FEE 写入()和 FEE 读取()中回调的周期  是1任务中回调的周期。

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

    FEE 需要在特权模式下执行。 您能否检查您的任务是在用户模式还是特权模式下运行?

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

    您好 QJ,

    所有任务都配置为 特权模式。 其他需要注意的事项?谢谢。

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

    我在 RTOS 中使用 FEE API 的经验不多。

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

    您好 QJ,

    我认为我们的问题是 FEE 主函数()不起作用。

    那么、您能给我们一些材料来解决这个问题吗?

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

    fee_mainFunction()正常工作。 问题是 您的一个任务中的 fee 主函数()未执行。

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

    您好 QJ,

    我们已经完成了断点调试, FEE 。mainFunction()可以被执行

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

    如果正确 调用了 fee_Init()和 fee_mainFunction(),则应对虚拟扇区的标头进行编程。  

    此图显示虚拟扇区的内容。 它实际上是一个活动的虚拟扇区。 第3个字~第4个字未编程。 这意味着什么?  FEE 主函数()被调用。  


    如果 调用了 FEE _mainFunction(),则应对第3~第4个字进行编程。

    第4个字表示擦除计数和 SW 版本号。 高8位被保留(0xFF)。

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

    您好 QJ,

    问题已经解决。 在 FEE Init()之后,  再次 修改等待状态 。

    感谢 您的支持。