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.

[参考译文] F28M35H52C:编程问题

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1165649/f28m35h52c-programming-issue

器件型号:F28M35H52C

大家好、

对微控制器 Concerto F28M35H52进行编程时遇到问题。

我过去从未遇到过任何问题、但几天前我开始遇到编程问题:

 

我使用的是 XDS100v2编程器、在 c28内核编程期间的某个时候、出现了程序加载错误。

再次尝试时、始终会出现错误、但仅针对 C28内核、如果我尝试对 M3内核进行正确编程、则会出现错误(也会使用另一个编程器 XDS110)。

以下是 CCS v.7的"Console"窗口中报告的错误:

Cortex_M3_0:GEL 输出:存储器映射初始化完成
C28xx_0:GEL 输出:
内存映射初始化完成
C28xx_0:GEL 输出:
RAM 初始化完成
C28xx_0:设置断点时出现问题、在0x80e3处执行"保持暂停"操作:(错误-1066 @ 0x80E3)无法设置/清除请求的断点。 验证断点地址是否在有效存储器中。 (仿真包6.0.579.0)
C28xx_0:断点管理器:使用 AET 断点重试
C28xx_0:无法运行目标 CPU:(错误-1156 @ 0x8050)器件可能在低功耗模式下运行。 是否要使其退出此模式? 选择"是"以强制器件唤醒、然后重试此操作。 选择"否"以在不唤醒器件的情况下重试此操作。 (仿真包6.0.579.0)
C28xx_0:停止目标 CPU 时出现问题:(错误-1135 @ 0x8050)调试探针报告了错误。 确认调试探针配置和连接、重置调试探针、然后重试此操作。 (仿真包6.0.579.0)
C28xx_0:错误:(错误-1135 @ 0x8050)调试探针报告了错误。 确认调试探针配置和连接、重置调试探针、然后重试此操作。 (仿真包6.0.579.0)
C28xx_0:20次尝试后无法确定目标状态
C28xx_0:在断开连接之前未能从目标中删除调试状态。 程序存储器中仍可能嵌入了断点运算代码。 建议您在连接之前重置仿真器、并在继续调试之前重新加载程序
C28xx_0:闪存操作期间发生错误:在目标被暂停时不能禁用硬件断点。 停止目标并重试
C28xx_0:闪存操作期间发生错误:无法写入0x00000064@数据:目标未连接
C28xx_0:闪存操作期间发生错误:无法读取0x00004400@数据:目标未连接
C28xx_0:闪存操作期间发生错误:无法读取0x00004402@数据:目标未连接
C28xx_0:闪存操作期间发生错误:无法读取0x00004406@数据:目标未连接
C28xx_0:闪存操作期间发生错误:无法写入0x00000@程序:目标未连接
C28xx_0:闪存操作期间发生错误:目标断开时无法启用
C28xx_0:闪存操作期间发生错误:无法读取0x00000064@数据:目标未连接
C28xx_0:闪存操作期间发生错误:无法写入0x00000064@数据:目标未连接
C28xx_0:闪存操作期间发生错误:在尝试执行 pwrite_ds.alg 时无法运行目标
C28xx_0:闪存操作超时、等待算法完成。 操作已取消。
C28xx_0:闪存操作期间发生错误:无法写入0x00000064@数据:目标未连接
C28xx_0:闪存操作期间发生错误:无法写入0x00004E26@数据:目标未连接
C28xx_0:闪存操作期间发生错误:无法读取0x04E26@程序:目标未连接
C28xx_0:闪存编程器:无法获取时钟信号量。 另一个内核可能仍在访问时钟寄存器。 操作已取消。
C28xx_0:文件加载程序:内存写入失败:未知错误
C28xx_0:GEL:文件:D:\Firmware\1795_P1\c28\Release\C28.out:加载失败。
C28xx_0:闪存操作期间发生错误:无法读取寄存器 PC:目标未连接
C28xx_0:闪存操作期间发生错误:无法写入0x00004000@数据:目标未连接
C28xx_0:闪存操作期间发生错误:无法写入0x00000@程序:目标未连接
C28xx_0:闪存操作期间发生错误:目标断开时无法启用
C28xx_0:闪存操作期间发生错误:无法读取0x00000064@数据:目标未连接
C28xx_0:闪存操作期间发生错误:无法写入0x00000064@数据:目标未连接
C28xx_0:闪存操作期间发生错误:在尝试执行 pwrite_en.alg 时无法运行目标
C28xx_0:闪存操作超时、等待算法完成。 操作已取消。
C28xx_0:闪存操作期间发生错误:无法写入0x00000064@数据:目标未连接
C28xx_0:闪存操作期间发生错误:无法写入0x00004E26@数据:目标未连接
C28xx_0:闪存操作期间发生错误:无法读取0x04E26@程序:目标未连接
C28xx_0:闪存编程器:无法获取时钟信号量。 另一个内核可能仍在访问时钟寄存器。 操作已取消。
C28xx_0:闪存操作期间发生错误:无法写入寄存器 PC:目标未连接

我认为 XDS100v2编程器可能存在一些问题、并以某种方式损坏了 C28内核。

是否有恢复微控制器的可能性、或者我是否需要用新的微控制器替换它?

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

    Massimo、

    您是否可以将电路板置于'Waitboot'模式或 SCI-Boot 模式?  

    有关引导模式的详细信息、请参阅数据表 第8.8.4节"器件引导顺序"

    https://www.ti.com/lit/gpn/f28m35h52c

    谢谢、此致、

    桑托什

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

    桑托赫斯、您好!

    是的、我可以将电路板置于'Waitboot'或 SCI-Boot 模式、但没有任何变化。

    我在论坛中发现了类似的问题:

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/704479/compiler-ccstudio-c2000-f28m35-c28-problem-with-xds100v2?tisearch=e2e-sitesearch&keymatch=F28M35%25252520programming#

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/600289/f28m35h22c-flash-programming-issue-on-c28-core-c28xx_0-can-t-run-target-cpu-error--1156-0x8050?tisearch=e2e-sitesearch&keymatch=F28m35h#

    我认为这可能是同一个问题, 但我认为这一问题没有解决办法。

    在任何情况下、这是否是与旧版 XDS100v2编程工具的兼容性问题?  

    另一个问题:是否有一种对微控制器进行编程的优选方法?

    即:

    1) 1)对 M3内核进行编程、

    2) 2)停止 M3内核、

    3) 3)对 C28内核进行编程

    谢谢、

    Massimo。

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

    Massimo、

    我想验证是否在 C28端对 CSM 密码进行了编程。  连接到 M3内核、然后从复位中释放 C28x 后、您可以手动连接到此内核(右键单击内核并进行连接)、然后打开存储器窗口至 0013 FFF7 - 0013 FFFF。  如果您看到所有的0xFFFF、则器件已解锁并应能够进行编程。

    如果密码读回0x0000、则表示器件已编程并已锁定密码。  基于上述情况、如果是这种情况、则是无意的。

    让我知道您看到的内容、然后我们就可以从这里开始了。

    最棒的

    Matthew

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

    您好、Matthew、

    我检查了存储器位置(0013FFF7 - 0013FFFF)、并回读了 AL 0x0000。

    Massimo。

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

    Massimo、

    这意味着器件被锁定、并且一个非0xFFFF 值被编程到这些位置。  遗憾的是、如果密码未知、则无法将器件恢复/重置为出厂状态、因此需要更换器件。

    如果在闪存被擦除/编程时闪存操作被断电或复位至芯片而中断、那么闪存中这些位置会发生意外编程。  您还记得在调试过程中是否发生过这样的事件吗?

    最棒的

    Matthew

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

    Matthew、

    我本来应该是很不幸的。

    我使用的是旧的 XDS100v2编程器、它可能会对连接器造成一些问题。 修复后似乎可以正常工作、但在一些编程周期后、问题再次出现。

    上次发生这种情况时、我在 M3内核运行时对 C28内核进行编程/调试。 这会是个问题吗?

    无论如何、我们现在已经购买了一个新的 XDS200编程器、我以后还会使用它!

    谢谢、

    Massimo。

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

    Massimo、

    感谢您提供新信息。  是的、由于 M3是该器件上的主处理器、并且它具有 C28x 的所有权权限、因此在程序过程中可能会暂停 C28x、这可能会导致此问题。

    最棒的

    Matthew

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

    Matthew、

    很高兴。 感谢您的支持!

    Massimo。