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.

[参考译文] CCS/F28M35H52C:TMS320F28M35xx Concerto controlCARD -控制执行

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/588072/ccs-f28m35h52c-tms320f28m35xx-concerto-controlcard---controlling-execution

器件型号:F28M35H52C
Thread 中讨论的其他器件:controlSUITE

工具/软件:Code Composer Studio

我按照 controlSUITE 文档 F28M35x-FRM-EX-UG.pdf 中的说明加载了2个示例 blinky 项目。  我已经对这两个文件进行了编译、并在第31页的第12步中进行了编译。  我将.out 文件加载到它们各自的内核上、然后我可以在调试窗口中看到代码、但从调试器中运行内核不会产生闪烁的 LED。  关闭 CCS 后、我确实看到两个 LED 都在闪烁、代码在某个点加载并运行、但我不理解如何控制运行/停止。  现在、我为电路板加电、但 LED 不闪烁、因此代码未运行。

有什么想法我做了什么错?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    嗯、我在 blinky_dc_m3.c 的标题注释中找到了答案、其中显示...

    //! addtogroup dual_example_list
    //!

    Blinky DC (闪烁)


    //!
    //! 此双核 Blinky 示例演示了如何运行和
    //! 在两个内核上实施独立应用。 中的勘误表
    //! 在连接调试器的情况下、该示例可能无法正确运行。
    //! 要运行该示例、请使用两个内核的相应项目和对其进行编程
    //! 然后断开调试器。 将 SW3开关1设置为向下位置
    //! (断开 TRSTn)以及将 SW1上的所有4个开关设置为向下
    //! 位置。 重启电源、两个 LED 都应开始闪烁。
    //!
    //! b 编译\b 配置:
    //! - RAM、闪存-从 RAM 或闪存运行和调试应用程序
    //! - RAM、闪存独立-作为独立运行应用程序(CCS 调试器不是
    //! 已连接)。 应用程序自动从运行
    //! 启动后 RAM 或闪存。

    当我在未连接 USB 的情况下建议开关设置并加电时、我看到一个 LED 闪烁(LD3)、但昨天它短暂工作时、右侧的 LED 闪烁(LD2)。 我认为、从代码检查中可以看出、正在运行的代码位于主(M3)内核上、但 LD2未闪烁这一事实表明代码未在控制(C28)内核上运行。

    我会自己继续、但如果有人能在这里进行芯片、你可以节省我的时间;显而易见的问题是:

    1.在将新代码编程到芯片中之前、是否需要将开关重新设置?
    2.这个'bootrom'中的勘误表'是否有修复?
    这是否意味着在从 CCS 连接到 controlCARD 时无法调试代码?

    供参考、我使用的是 CCS 7
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    嗯、我发现 C28代码没有运行、但我将在这里发布、以便我的足迹中的任何人都可以受益。
    我是从我在第一个帖子 F28M35x-FRM-EX-UG.pdf 中指定的文档工作的、该文档位于我的目录 C:\ti\controlSUITE\device_support\f28m35x\V210\doc 中

    第28页(第2.3节)介绍了如何导入和编译工程
    在第2.3节(第5段)中,我介绍了如何创建新的目标配置。
    在第31页、它要求您将编译的代码加载到每个处理器(在连接到处理器之后)、解释不是很好、但它上面有一个带有绿色向下箭头的按钮、在工具提示上显示"Load"、 单击此按钮右侧的向下箭头、然后从出现的下拉列表中选择"Load Program"(加载程序)。

    不清楚的是链接器参数的存储位置、如_flash。 这些注释表明它们位于器件链接器命令文件中、但我找不到-它在哪里?

    无论如何、M3程序中有一条判断说...

    //#ifdef _standalone
    #ifdef _flash
    //发送引导命令以允许 C28应用程序开始执行
    IPCMtoCBootControlSystem (CBROM_MTOC_BOOTMODE_BOOT_FROM _FLASH);
    其他
    //发送引导命令以允许 C28应用程序开始执行
    IPCMtoCBootControlSystem (CBROM_MTOC_BOOTMODE_BOOT_FROM _RAM);
    #endif
    //#endif

    我看到整个部分灰显、因为_standalone 不是真的。 我没有找到它的存储位置、就注释掉 了#ifdef 语句、然后重新编译了、每次两个 LED 闪烁时它都能正常工作
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    这里太可怕了

    无论如何、这些标志都是在 Project Properties 下定义的。  右键单击并选择项目属性、然后导航至"Build">ARM 编译器"、其中有所有使用右下角的"Edit Flags"按钮定义的标志。  我添加了--define="_standalone "并删除了我之前的注释标签、重新编译了这些标签、所有标签都按预期工作。

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

    TED、

    controlSUITE 的默认示例具有预设的构建配置。 例如:从双核示例(C:\ti\controlSUITE\device_support\f28m35x\v210\F28M35x_examples_Dual\blinky)导入闪烁示例项目后、右键单击项目资源管理器中的 M3项目、然后浏览生成配置->设置活动-> 。

    例如:如果您选择"Flash Standalone (闪存独立)"、则会为此配置定义特定的预定义符号; 这将使您能够根据当前的开发阶段构建项目。

    您可以通过以下方式查看预定义符号:右键单击项目资源管理器中的项目->单击属性->生成->高级选项->预编译符号。

    现在、您可以更改右侧选项卡上的配置、并再次浏览预定义符号以查看定义了哪些符号。

    希望这对您有所帮助。

    此致

    Santosh Athuru

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

    谢谢、正如您所描述的、尽管在我的案例中、_standalone 未列在预定义符号下(也许是因为我之前的编辑)、但我能够添加它、并且对编译的影响与预期的一样。

    真正的问题是"STARDALONE"是什么意思? 是否打算将其用于未使用调试器的人员? 如果未连接调试器、是否需要为 true? 在我的案例中、我遇到了这个问题、因为有一个记录在案的问题、"bootROM"中的勘误表"(正如广告中所说的)阻止我从调试器运行示例程序。

    这是一个奇怪的示例、还是我要在所有示例中都遇到这个问题? 如果是、那么我很想为它找到一个修复方法、比如更新的 bootROM。

    谢谢、

    TED
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    TED、
    是的、独立配置是在未连接调试器的情况下运行示例/应用程序。 将独立编译文件加载到两个内核中并断开调试器连接、然后在电路板上关闭电源、应用程序应正在运行。

    独立配置通常在用户完成开发后进行选择。 在调试和开发过程中、更容易依赖于调试/RAM 配置、然后移至调试/闪存、再移至独立闪存。

    连接调试器后、用户可以控制程序加载和运行。 在独立模式下、当器件加电且引导模式引脚设置为引导至闪存时、引导 ROM 在闪存中启动应用程序。

    您能否检查勘误表是否影响您拥有的器件的修订版本。 通常、勘误表指出、这在修订版 A 中已修复、或列出了受错误影响的修订版。

    闪烁示例应按原样工作。 在独立模式下、M3应用程序必须向 C28x 引导 ROM 发送引导模式 IPC 命令、以使其引导至 C28x 闪存、但在调试模式下、用户通常控制内核的运行方式。

    有关器件如何引导的更多详细信息、请参阅 TRM 的引导 ROM 一章、第6.7节有助于从应用角度了解这一观点。

    希望这对您有所帮助。

    此致
    Santosh Athuru