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.

[参考译文] TMDSCNCD28P65X:加载固件时出现问题

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

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1431852/tmdscncd28p65x-problem-with-loading-fw

器件型号:TMDSCNCD28P65X
Thread 中讨论的其他器件:C2000WARE

工具与软件:

您好!

我遇到了具有 P65x 卡的 probem。 我无法从 C2000Ware 加载任何固件、包括示例。   

能否就如何解决问题向我提出建议?

当我尝试加载到 RAM 时、我收到以下错误:

C28xx_CPU1:GEL 输出:
存储器映射初始化完成
C28xx_CPU1:GEL 输出:... DCSM 初始化启动...
C28xx_CPU1:GEL 输出:……DCSM 初始化完成……
C28xx_CPU1:GEL 输出:
CPU2已退出复位并配置为等待引导。
(如果您先前已连接、可能必须恢复 CPU2以到达等待引导循环。)
C28xx_CPU1:如果在一个内核上完成擦除/编程(E/P)操作、则另一个内核不应从共享 RAM (SR)执行、因为它们用于 E/P 代码。 对所选 CPU1/CPU2闪存组可执行文件进行编程后、可以从 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_CPU2:GEL 输出:

RAM 初始化完成

C28xx_CPU2:GEL 输出:
存储器映射初始化完成
C28xx_CPU2:如果在一个内核上完成擦除/编程(E/P)操作、则另一个内核不应从共享 RAM (SR)执行、因为它们用于 E/P 代码。 对所选 CPU1/CPU2闪存组可执行文件进行编程后、可以从 SR 开始执行用户代码。
C28xx_CPU2:只有 CPU1片上闪存插件可以为 CPU1和 CPU2闪存操作配置时钟。 当调用 CPU1闪存操作时、插件会自动配置 PLL。 但是、如果用户只想执行 CPU2闪存操作而不在当前会话中执行 CPU1操作、则应在调用 CPU2闪存操作之前点击 CPU1的片上闪存插件中的"Configure Clock"按钮。 使用该按钮时、闪存插件会在200MHz 处使用 INTOSC 作为时钟源来配置 CPU1/CPU2的时钟。 插件将保留这样的 PLL 配置、用户应用程序应根据应用程序的要求配置 PLL。
C28xx_CPU2:在使用闪存插件执行任何闪存操作之前、(a)请选择应将哪些闪存组映射到哪个 CPU (CPU1与 CPU2)-此选择应在 CPU1闪存插件 GUI 中完成。 (b)请选择用户想要擦除闪存插件的闪存存储体(在 CPU1闪存插件 GUI 和 CPU2闪存插件 GUI 中)
C28xx_CPU2:文件加载程序:验证失败:地址0x00A800处的值@程序不匹配请验证目标存储器和存储器映射。
C28xx_CPU2:GEL:文件:C:\Users\CCC\workspace_v12\GPIO_ex1_setup\CPU1_RAM\GPIO_ex1_setup.out:发生数据验证错误、文件加载失败。

当我尝试加载到闪存时、我 收到以下错误:

C28xx_CPU1:GEL 输出:
存储器映射初始化完成
C28xx_CPU1:GEL 输出:... DCSM 初始化启动...
C28xx_CPU1:GEL 输出:……DCSM 初始化完成……
C28xx_CPU1:GEL 输出:
CPU2已退出复位并配置为等待引导。
(如果您先前已连接、可能必须恢复 CPU2以到达等待引导循环。)
C28xx_CPU1:如果在一个内核上完成擦除/编程(E/P)操作、则另一个内核不应从共享 RAM (SR)执行、因为它们用于 E/P 代码。 对所选 CPU1/CPU2闪存组可执行文件进行编程后、可以从 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_CPU2:GEL 输出:

RAM 初始化完成

C28xx_CPU2:GEL 输出:
存储器映射初始化完成
C28xx_CPU2:如果在一个内核上完成擦除/编程(E/P)操作、则另一个内核不应从共享 RAM (SR)执行、因为它们用于 E/P 代码。 对所选 CPU1/CPU2闪存组可执行文件进行编程后、可以从 SR 开始执行用户代码。
C28xx_CPU2:只有 CPU1片上闪存插件可以为 CPU1和 CPU2闪存操作配置时钟。 当调用 CPU1闪存操作时、插件会自动配置 PLL。 但是、如果用户只想执行 CPU2闪存操作而不在当前会话中执行 CPU1操作、则应在调用 CPU2闪存操作之前点击 CPU1的片上闪存插件中的"Configure Clock"按钮。 使用该按钮时、闪存插件会在200MHz 处使用 INTOSC 作为时钟源来配置 CPU1/CPU2的时钟。 插件将保留这样的 PLL 配置、用户应用程序应根据应用程序的要求配置 PLL。
C28xx_CPU2:在使用闪存插件执行任何闪存操作之前、(a)请选择应将哪些闪存组映射到哪个 CPU (CPU1与 CPU2)-此选择应在 CPU1闪存插件 GUI 中完成。 (b)请选择用户想要擦除闪存插件的闪存存储体(在 CPU1闪存插件 GUI 和 CPU2闪存插件 GUI 中)
C28xx_CPU2:GSxMSEL 寄存器配置正确
C28xx_CPU2:闪存编程器:擦除组0 FMSTAT (某些器件上的 STATCMD)时出错值= 65。 操作已取消(0)。
C28xx_CPU2:文件加载程序:内存写入失败:未知错误
C28xx_CPU2:GEL:文件:C:\Users\CCC\workspace_v12\gpio_ex1_setup\cpu1_flash\gpio_ex1_setup.out:加载失败。

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

    尊敬的 Jozef:

    您使用的器件之前是否刷写过? 什么示例导致了此错误?

    此致!

    Ryan Ma

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

    您好、Ryan、

    确实如此。 一年前、当我在进行 MCU 资格认证时、它闪过几次。 它工作得很好。 该板具有较旧的版本 MCU114A。

    Jozef

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

    尊敬的 Jozef:

    [quote userid="314446" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1431852/tmdscncd28p65x-problem-with-loading-fw C28xx_CPU2:文件加载程序:验证失败:地址0x00A800处的值@程序不匹配请验证目标存储器和存储器映射。
    C28xx_CPU2:GEL:文件:C:\Users\CCC\workspace_v12\GPIO_ex1_setup\CPU1_RAM\GPIO_ex1_setup.out:发生数据验证错误、文件加载失败 [报价]

    您对此器件使用的目标配置是什么? 根据此错误、您可能正在使用其他器件的目标配置。

    此致!

    Ryan Ma

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

    选择内核时会自动分配我正在使用的目标配置。 我相信这是正确的。
    我还尝试使用 XDS200调试器、在项目设置中对其进行了更改、并 在控制卡上翻转特定开关、但有同样的行为。

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

    尊敬的 Jozef:  

    在为 RAM 配置加载.out 时是否选择 CPU1?

    此致!

    Ryan Ma

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

    您好、Ryan、

    是的、我已经为软件选择了 CPU1内核。

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

    尊敬的 Jozef:

    您是否可以按照以下步骤确保正确连接到 CPU1并加载固件?

    1.转到"View -> Target Configuration (查看->目标配置)"

    2.创建新的目标配置、完成后单击完成

    3.打开新的 ccxml、然后键入您要使用的板/设备

    4.测试连接(以下是成功连接)

    5.右键单击 ccxml、启动所选配置

    6.连接到 CPU1。

    连接后、转到"Run"->"Load"->"Load Program..."。 选择正确的 CPU1_FLASH 程序。

    这应该起作用。 在执行上述步骤时如果仍然有任何错误、请告诉我。

    此致!

    Ryan Ma