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/F28M36H33B2:Concerto上的共享RAM问题

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/573285/ccs-f28m36h33b2-shared-ram-problem-on-concerto

部件号:F28M36H33B2

工具/软件:Code Composer Studio

我正在尝试让共享RAM在我的蛇腹装置的C28和M3之间共享参数。 我有2个蛇形设备,一个是带有F28M36P63C2的controlCARD开发板,另一个是带有F28M36H33B2的目标设备, 我正在使用RAM_MANAGEMENT示例代码。 该代码在F28M36P63C2上工作正常但如果我在 F28M36H33B2上编程完全相同的代码,它将不工作。 即使我尝试在 调试模式下手动编辑位于共享RAM中的数组m3_r_w_array,M3或C28上的值都不会更改。 就好像我没有访问共享RAM的权限,即使它位于SHARERAMS2中,在本例中,M3是的主RAM。 如果我尝试访问/编辑C28上的C28_r_w_array,则C28端也是如此。 这两种设备的闪存大小,时钟速度和某些外设都不同,RAM空间完全相同。 为什么共享RAM可以在 F28M36P63C2上工作,而不能在 F28M36H33B2上工作? 我正在使用RAM_MANAGEMENT示例F28M36x_generic_wshared_M3_RAM.cmd中的链接器命令文件。

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

    在不工作的主板上,您是否可以通过CCS监视窗口检查M3侧地址0x400FB930 (或C28x侧地址0x08C0)处的值?

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

    您好,Vivek

    请参阅下文。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢。 此值不应为0x0。 值0x0表示未启用RAM。 如果您检查工作板,则应看到非零值。 这些值由BootROM代码填充,但看起来设备在CCS连接期间被重置,因此不会填充这些值。 在M3上,CCS连接后,请发出复位(通过调试器),然后单击“运行”图标,然后再次检查这些位置的值。

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

    是的,工作设备在这些地址显示0x00FF。 我在我的目标设备上执行了您的建议,连接,重置并再次运行,但两个内核上的值仍然为0000。  

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

    您好,Albert,

    我检查了数据表,设备"F28M36H33B2"上没有可用的共享RAM。 这就是您看到值0x0而它不起作用的原因。

    我希望这可以澄清问题。

    此致,

    Vivek Singh

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

    您好,Vivek

    这有点羞辱,我不知道为什么我错过了,我检查的时候一定是看错了设备。 谢谢。

    同时,我一直在使用MTOCRAM和CTOMRAM在两个内核之间共享变量。 我知道此RAM实际上是用于IPC的。 如果我不使用IPC,我可以将此RAM用作"共享RAM"吗? 如果我想将此RAM用于IPC和共享,我可以在链接程序命令文件中拆分RAM吗? 我不需要大量共享RAM,只是共享一些变量。

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

    可以,您可以使用IPC RAM在两个处理器之间共享数据。 IPC RAM和共享RAM之间的唯一区别是不允许从IPC RAM执行代码。

    此致,

    Vivek Singh