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.

[参考译文] TMS320F28379D:如何从为 CPU1或 CPU2选择的 c2000ware SDK 中识别示例工程?

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

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1227616/tms320f28379d-how-to-identify-the-example-project-from-c2000ware-sdk-is-selected-for-cpu1-or-cpu2

器件型号:TMS320F28379D
主题中讨论的其他器件:C2000WARE

您好!  

     下面是我 从 c2000ware SDK 导入到 CCS IDE 工作区中的一个示例项目路径: C:\ti\c2000\C2000Ware_4_02_00_00\driverlib\f2837xd\examples\cpu1\sci

1)如何知道 上面导入的 项目文件应该在 CPU1中而不是 CPU2中刷写可执行代码?

2) device.c 和 device.h 是否保存有关 CPU1或 CPU2选择的任何信息?

3)项目属性是否包含 有关 CPU1或 CPU2选择的任何信息?

谢谢。

SID C

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Unknown 说:
    1)如何知道 上述导入的 项目文件应该在 CPU1而非 CPU2中刷写可执行代码?

    这由您的调试配置控制。 一个双 CPU 项目将生成两个构建构件。 您将每个 CPU 分配给单独的 CPU。 例如、这是 CPU1的视图。

    Unknown 说:
    2) device.c 和 device.h 是否保存有关 CPU1或 CPU2选择的任何信息?

    仅用于外设分配。 您是说、运行代码如何知道它在哪个 CPU 上运行? 您可以编写一些代码来检查 CPUID 寄存器。

    Unknown 说:
    3)项目属性是否包含 有关 CPU1或 CPU2选择的任何信息?

    不会、我不这么认为、但您可以将 CPU1和 CPU2添加到每个项目的预定义符号中、并使用它们来控制编译。

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

    您好、Kier:

            如果我们在 预定义符号 CPU1中进行选择、那么为什么在调试配置中我们应该再次选择 CPU 内核?

    谢谢。

    SID C

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

    调试配置是强制的。 预定义符号是可选的、在 CPU1和 CPU2工程使用相同源代码文件的情况下使用。 例如、您可以在两个项目中使用单个 device.c、但只有 CPU1应在该文件中执行一些操作。

    一般来说、可以将 CPU1和 CPU2视为完全不同的微处理器。 您需要确保使用正确的程序刷写正确的微控制器。 编译器设置通常无法为您控制这一点、调试配置的情况除外。

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

    尊敬的 Kier:  

    Kier 回复:仅用于外设分配。 您是说、运行代码如何知道它在哪个 CPU 上运行? 您可以编写一些代码来检查 CPUID 寄存器。

    SID C 回复:

    用于 CPUID 寄存器。 我写了以下代码,但无法读取任何数据,即使在调试期间,我无法在 Register , Window 中找到 CpuIdRegs :

    #define CPU_ID_REG_BASE 0x0007026DU
    #define SYSCTL_O_CPUID 0x0U


    UINT32 GET_CPU_ID (void)

    EALLOW;
    返回(HWREG (CPU_ID_REG_BASE + SYSCTL_O_CPUID));
    EDIS;
    }
    谢谢。
    SID C
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的、我也无法在调试器中看到 CpuIdRegs、或许要提出一个单独的票证? 但是、使用"Memory Browser"、可以获得预期的结果:

    速率

    CPU2

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

    您好!  

    您正在使用哪个版本的 CCS? 正在使用的 C2000器件支持包是什么?

    可在"CCS"->"Help"->"About Code Composer Studio"->"Installation Details"中找到此信息

    此致

    Siddharth

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

    您好!  

      请在下图中查找版本:

    C2000器件支持:6.1.0.0

    选择的微控制器:TMS320F2837xD

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

    尊敬的 Siddharth:

         是否需要从我当前的 C2000设备支持中进行更新:6.1.0.0、如果是、是否会影响我当前的工作区项目设置和编译器设置?

    谢谢。

    SID C

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

    您好!  

    都将检查 CCS 器件支持包是否存在问题、并告知您相关情况。  

    但是、它不会影响您当前的工作区项目或编译器设置。 对于 CCS 寄存器视图、这将是 xml 更新。

    此致

    Siddharth  

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

    尊敬的 Siddharth:

         CCS 寄存器视图是否有任何更新?

    谢谢。

    SID C

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

    您好!  

    我还不知道该怎么看。 我们会在几天后回复您。

    此致

    Siddharth

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

    为什么不使用存储器浏览器进行确认?

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

    如果您迫切需要在 Registers 视图中查看该代码、则尝试将以下行添加到:C:\ti\compiler\ccs\ccs_base\common\targetdb\devices\f28379d.xml、约第137行:

    <instance href="../Modules/C2000/f2838x_cpu_id_regs.xml" xml="f2838x_cpu_id_regs.xml" id="CpuIdRegs" xmlpath="../Modules/C2000/" baseaddr="0x7026D" endaddr="0x0007026D" size="0x0001" accessnumbytes="4" permissions="p" />

    然后、您应该会在 CpuIdRegs 下看到它们。 这假设您具有 CCS 12+。

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

    您好!  

    您可以按照 Kier 的建议更新 xml 文件、然后在"Register"视图中看到寄存器。

    此致

    Siddharth