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.

[参考译文] TMS320F280025C:TMS320F280025C

Guru**** 2455560 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1131051/tms320f280025c-tms320f280025c

器件型号:TMS320F280025C
主题中讨论的其他器件:C2000WARE

您好!

我正在开发用于 TI DSP 的 CAN-UDS 引导加载 程序,对于闪存擦除和闪存写入操作,我参考的是示例代码 flashapi_ex1_programming。

在此示例中、它们写入扇区6。 但是、如果看到 扇区6的存储器分配、我在那里看不到任何内容。 此外、如果我将存储器保存到存储器中、我在读取存储器中看不到任何内容。  

如何验证闪存扇区是否被正确写入?

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

    注:我在这里添加了注释,最后一个擦除函数。

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

    您好 Yogini、

    未编程时返回的 fmstat 值是什么?

    验证是否成功通过?

    谢谢、此致、

    Vamsi

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

    您好、Vamsi、

    我尝试观察以下函数的返回值;

    我始终获取  Fapi_Status_Success。

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

    我在写操作后读取并验证操作;

    //
    //验证编程值。 检查是否存在 ECC 错误。
    //
    oReturnCheck = fapi_doVerify (((uint32 *) u32Index、
    4、Buffer32+(I/2)、
    oFlashStatusWord (&O);

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

    您好 Yogini、

    fapi_getFsmStatus()返回的 fmstat 值如何?

    谢谢、此致、

    Vamsi

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

    返回值为零。

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

    此外,我还有一个疑问。 那么映射文件中反映的值是字还是字节?

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

    您好 Yogini、

    您能否在程序/验证之后(在 C2000Ware 示例代码中)保留一个断点、并对存储器窗口进行快照并在此处共享?

    谢谢、此致、
    Vamsi

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

    您好 Yogini、

    映射文件显示16位字。

    谢谢、此致、
    Vamsi

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

    您好、Vamsi、

    感谢您的回答。

    我还有一个与此相关的问题。

    从上面提到的代码中,我看到无法从同一组调用闪存 API。

    //
    //闪存 API 函数不应从其所在的组中执行
    //正在进行擦除/编程操作。
    //另外,请注意不应对上的闪存组进行任何访问
    //正在进行哪些擦除/编程操作。 功能如下所示
    //被映射到 RAM 执行。

    但我们的控制器只有一个组。 那么、我们如何为引导加载程序调用这些 API?  

    很难将它们映射到 RAM,因为当我们刷写应用程序时,内存中同时有引导加载程序和应用程序。  是否会导致任何问题?

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

    此外、

    我尝试写入扇区6、我写入了映射到扇区6的闪烁代码。 然后、我在 末尾向扇区6添加了跳转指令 但代码将在跳转后陷阱。

    interrupt_illegalOperationHandler()

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

    您好 Yogini、

    请打开单独的主题帖以回答单独的问题。  这将使我们能够轻松跟踪问题。   

    此主题开始时的原始问题现在是否已解决?   

    谢谢、此致、
    Vamsi

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

    好的。 先前的问题已解决