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.

[参考译文] TMS320F280034:OTP 闪存算法返回错误代码0x00000000

Guru**** 2398695 points
Other Parts Discussed in Thread: TMS320F280034, TMS320F280039C, UNIFLASH, TMS320F280039

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1201851/tms320f280034-otp-flashing-flash-algorithm-returned-error-code-0x00000000

器件型号:TMS320F280034
主题中讨论的其他器件: TMS320F280039CUNIFLASHTMS320F280039

我们在刷写 TMS320f280034 (48引脚)的 OTP 时遇到问题。 我们使用带有280034的定制板和带有具有 TMS320f280039C (100引脚)集线站的控制卡。  
如果我们要对定制板进行编程、则会出现以下错误。  如果我们想要刷写 Z1或 Z2 OTP、就会发生这种情况。  

C28xx_CPU1:闪存编程期间出错(闪存算法返回错误代码0x00000000、FMSTAT (某些器件上的 STATCMD) 0x00000000)。 操作已取消。

  可以对 TMS320f280039C 进行正确编程。 我们还尝试 第二次刷写 TMS320f280039C、显示的错误与 TMS320f280034的错误不匹配。 另一个带有280037 (48引脚)的定制板、我们也可以成功刷写 OTP。  

C28xx_CPU1:闪存编程期间出现错误。 地址0x00078008、FMSTAT (某些器件上的 STATCMD) 0x00000030

即我们要编写的 OTP  

Z1OTP 1 0x5AFFFFFF

Z1OTP 2 0x5AFFFFEF

Z1OTP 3 0xFFFFFF23

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

    尊敬的 KMay:

    有一个问题与您面临的问题不直接相关:您是否能够在独立模式 F280034下引导而不更新 OTP? 这意味着不连接调试器?

    谢谢你

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

    不可以、如果不刷写 OTP、我们无法引导、因为我们只有48个引脚并且全部使用。 我们有一个引导引脚、但要使用它、我们还需要刷写 OTP。 我们的 Bootdef 0必须是从0x88000进行闪存引导

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

    清楚、谢谢。 并且您使用了所有48个引脚、这实现了很好的利用率

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

    尊敬的 KMay:

    我看到我们的安全专家被指派担任这一职务。  他 很快就会回到你身边。

    同时、我想提几点:

    1) 1)关于错误"C28xx_CPU1:闪存编程期间发生错误。 地址0x00078008、FMSTAT (某些器件上的 STATCMD) 0x00000030":  如闪存 API 指南(http://www.ti.com/lit/pdf/spruj27)中所述、FMSTAT 值0x00000030 表示您正在尝试编程值"1"、其中已编程"0"。  无法使用编程命令将位从0翻转为1。  只有擦除命令可以执行此操作。  由于这是 OTP、因此无法擦除。  看起来您已经对该位置进行了编程(因为您提到了"第二次")、因此是该错误。   

    2)关于错误"C28xx_CPU1:闪存编程期间出错(闪存算法返回错误代码0x00000000、FMSTAT (某些器件上的 STATCMD) 0x00000000)。 操作已取消。' :  如果不是 OTP,您是否能够成功地在该定制板上对闪存进行编程?  如果您能够对闪存进行编程、那么这可能不是定制电路板的问题。   

    3) 3)您说您想 写入"Z1OTP 1 0x5AFFFFF、 Z1OTP 2 0x5AFFFFEF 和  Z1OTP 3 0xFFFFFF23"时、您说的是对 Z1OTP_GPREG1、Z1OTP_GPREG2 和 Z1OTP_GPREG3进行编程吗 ?  请说明、以便我们的 DCSM 专家进行分析。  您目前在这些位置看到了哪些值?

    谢谢。此致、
    Vamsi

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

    感谢您的答复。

    1)这是明确的。 检查 OTP 是否已刷写、错误的外观。

    2) 2)是的、我们可以通过 XDS110使用我们的代码来刷写存储器、并且工作正常。 但如果没有调试器、则芯片在没有 OTP 设置的情况下无法使用。

    3) 3)是的、我们需要将 GPREG1写入3。 当前存在所有值0xFFFFFFFF。

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

    Pascal、您好!

    您是否已对此器件的密码进行编程?  对此进行编程时器件是否已解锁?

    您能附加应用的映射文件吗?

    谢谢。此致、
    Vamsi  

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

    Pascal:

    需要的其他信息请: 您是使用 CCS 还是 Uniflash 对此进行编程?    您正在使用哪个版本?

    谢谢。此致、

    Vamsi

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

    CCS 12.1.0.00007、并且当前没有密码或设置了。
    我想我不能在公共论坛发布地图文件,但我会检查这一点。

    为什么映射文件很重要? 我想、OTP 段不包含在映射文件中

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

    Pascal、您好!

    我认为您要将 OTP 编程为可执行文件(输出文件)的一部分。  因此、我们想要检查映射文件、以查看该内容是否已包含在图像中。 情况不是这样吗?   

    请提供有关如何尝试对 OTP 进行编程的更多详细信息。

    谢谢。此致、
    Vamsi

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

    很抱歉误解。 不包括输出文件中的 OTP 值。 我们的步骤包括:

    1.在 CCS 中创建调试会话并刷写 OUT 文件(也可以在不刷写的情况下工作)

    2.打开片上 Flash 工具

    3.尝试通过片上闪存工具刷写 OTP 值(它适用于其他型号280037和280039 (C))

    这是一个 TMS320F280039仅刷写了 GPREG1和 GPREG3的示例:

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

    Pascal、您好!

    好的、感谢您提供的信息。  我们的安全专家可以在 F280034上尝试相同的操作、看看会发生什么情况。

    您是否尝试通过输出文件对这些字段进行编程?

    谢谢。此致、
    Vamsi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您是否尝试通过 out 文件对这些字段进行编程?

    抱歉、还没有。

    但对于同一系列中的其他控制器、我们采用相同的过程。 唯一的区别是项目设置中使用的控制器。

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

    您好!

    连接到 CCS 后、您能否打开地址0x78000的存储器视图并提供该视图的快照、以便查看这些地址的值是多少。

    此致、

    Vivek Singh

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

    也都是1。

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

    您是否仅在一个或多个器件上尝试过此功能并在每个器件上遇到了相同的问题?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您是否仅在一台或多台设备上尝试过此功能,并在每个设备上遇到了相同的问题?

    在两个不同的器件上同步信号。

    这是我们280039控制器位于0x78000处的内容:

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

    有人可以尝试闪存280034的 OTP 值吗? 由于没有可用的开发板、我们只能在我们的定制硬件中访问这些控制器。

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

    您好!

    您可以在下面尝试一下吗-

    • 将器件连接到 CCS
    • 在 CCS 中、打开闪存插件 GUI (在 CCS 菜单的"Tools"下)
    • 现在您可以找到在 OTP 中对所有字段进行编程的相同选项
    • 请输入 GPREGx 位置所需的值、仅尝试对该部分进行编程。

    请告诉我们、这是否起作用、或者您得到同样的错误。

    此致、

    Vivek Singh

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

    您可以在下面尝试一下吗-

    • 将器件连接到 CCS
    • 在 CCS 中、打开闪存插件 GUI (在 CCS 菜单的"Tools"下)
    • 现在您可以找到在 OTP 中对所有字段进行编程的相同选项
    • 请输入 GPREGx 位置所需的值、仅尝试对该部分进行编程。

    请告诉我们、这是否起作用、或者您得到同样的错误。

    [/报价]

    这是我 6小时前在 e2e.ti.com/.../4537588

    它是片上闪存工具、对吧? 这是我们的第一次尝试。

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

    我们的工具对于所有 F28003x 器件都是相同的、因此如果它适用于 F280039、那么也应该适用于 F280034器件、但我们将尝试找到 F280034器件并对这些字段进行编程。

    此致、

    Vivek Singh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们的工具对于所有 F28003x 设备都是相同的,因此如果它适用于 F280039,那么也应该适用于 F280034设备,但我们将尝试查找 F280034设备并对这些字段进行编程。

    谢谢你。 这是我们自第一个帖子以来想要的结果。

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

    如果您有结果、请尽快告知我们

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

    您好!

    您是否也可以从起始地址 0x0107 1000 (用于用户 OTP 的 ECC 空间)向我发送的存储器视图的快照。

    - Vivek  

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

    Pascal、KMay、您好!

    请联系 Ralf Eckhardt。  他将为您提供解决方案。  

    谢谢。此致、
    Vamsi

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

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

    Pascal、您好!

    Vamsi 提供的解决方案可行、我刚刚尝试过。 只需联系您的联系人、为您提供解决方案。

    此致

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

    Pascal、KMay、您好!

    请告诉我您是否从  Ralf Eckhardt 收到了更新的工具。

    如果您尚未收到、请向我发送朋友请求(将鼠标悬停在我的姓名上并单击"请求友谊"按钮)。  我可以将该工具发送给您。

    谢谢。此致、
    Vamsi

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

    Pascal、您好!

    我在私聊中将解决方案发送给您。  请尝试一下、并告诉我。

    谢谢。此致、

    Vamsi

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

    它的确有效。 非常感谢。

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

    Pascal、您好!

    感谢您的确认。   

    我正在关闭此帖子。   

    此致、
    Vamsi

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

    供参考对于可能参考此帖子的其他人: 请查看 https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1206580/tms320f280034-otp-program-feature 

    我正在关闭此帖子。   

    谢谢。此致、
    Vamsi