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.

[参考译文] TMS320F28P659DK-Q1:TMS320F28P659DK-Q1闪存编程器:擦除组4 FMSTAT (某些器件上的 STATCMD)时出错、值= 65 (十进制)。 操作已取消(0)。

Guru**** 2481465 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1460679/tms320f28p659dk-q1-tms320f28p659dk-q1-flash-programmer-error-erasing-bank-4-fmstat-statcmd-on-some-devices-value-65-decimal-operation-cancelled-0

器件型号:TMS320F28P659DK-Q1

工具与软件:

您好!

我看到以前有人问过这个问题、但没有提供解决方案。  当我尝试在659D 上加载程序时、出现以下错误:

C28xx_CPU1:GEL 输出:
存储器映射初始化完成
C28xx_CPU1:GEL 输出:... DCSM 初始化启动...
C28xx_CPU1:GEL 输出:……DCSM 初始化完成……
C28xx_CPU1:GEL 输出:
CPU2已退出复位并配置为等待引导。
(如果您先前已连接、可能必须恢复 CPU2以到达等待引导循环。)
C28xx_CPU1:如果在一个内核上完成擦除/编程(E/P)操作、则另一个内核不应从共享 RAM (SR)执行、因为它们用于 E/P 代码。 对所选的闪存组进行编程后、可以从 SR 开始执行用户代码。
C28xx_CPU1:只有 CPU1片上闪存插件可以为 CPU1和 CPU2闪存操作配置时钟。 当调用 CPU1闪存操作时、插件会自动配置 PLL。 但是、如果用户只想执行 CPU2闪存操作而不在当前会话中执行 CPU1操作、则应在调用 CPU2闪存操作之前点击 CPU1的片上闪存插件中的"Configure Clock"按钮。 使用该按钮时、闪存插件会在200MHz 处使用 INTOSC 作为时钟源来配置 CPU1/CPU2的时钟。 插件将保留这样的 PLL 配置、用户应用程序应根据应用程序的要求配置 PLL。
C28xx_CPU1:在使用闪存插件执行任何闪存操作之前、(a)请选择应将哪些闪存组映射到哪个 CPU (CPU1与 CPU2)-此选择应在 CPU1闪存插件 GUI 中完成。 (b)请选择用户想要擦除闪存插件的闪存存储体(在 CPU1闪存插件 GUI 和 CPU2闪存插件 GUI 中)
C28xx_CPU1:GEL 输出:... DCSM 初始化启动...
C28xx_CPU1:GEL 输出:……DCSM 初始化完成……
C28xx_CPU1:GEL 输出:
CPU2已退出复位并配置为等待引导。
(如果您先前已连接、可能必须恢复 CPU2以到达等待引导循环。)
C28xx_CPU1:GEL 输出:... DCSM 初始化启动...
C28xx_CPU1:GEL 输出:……DCSM 初始化完成……
C28xx_CPU1:GEL 输出:
CPU2已退出复位并配置为等待引导。
(如果您先前已连接、可能必须恢复 CPU2以到达等待引导循环。)
C28xx_CPU1:GSxMSEL 寄存器配置正确
C28xx_CPU1:BankMuxSel 寄存器配置正确
C28xx_CPU1:闪存编程器:擦除组4 FMSTAT (某些器件上的 STATCMD)时出错值= 65 (十进制)。 操作已取消(0)。
C28xx_CPU1:文件加载程序:内存写入失败:未知错误
C28xx_CPU1:GEL:文件:D:\Dropbox\Projects\codings\tiproj\f28p65x\Mitra\MITRA65_CPU1\CPU1_FLASH\MITRA65_CPU1.out:加载失败。

没有调试模式。  都将闪烁。  组1、2和3连接到 CPU1、组4和5连接到 CPU2。

我该怎么办? 谢谢

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

    好的、我解决了这个问题、但是在任何 TI 的回应或工具中都没有提到这个问题。

    对于有相同问题的任何人:

    1.两个 CPU 都需要由 CPU1编程。  在 CPU1项目中、添加 CPU2输出文件的代码位置。

    2.当然、您知道如何在调试窗口中设置闪存编程寄存器、闪存设置。  但降低。 您需要删除"erase all"(全部擦除)上的默认项目、而仅选择"erase necessed"(必要擦除)。  这就是问题所在。  CPU1尝试擦除 CPU2专用的范围、因此出现了组4错误。

    3.您会发现 CPU2的代码继续在闪存工具中启用组0勾号标记。  我必须禁用这种奇怪行为的唯一方法是、由于地址需要访问组0、因此无需从 CPU2访问闪存保护寄存器!!