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.

[参考译文] F28M36H33B2:Blinky示例Flash-Standalone在controlCARD上工作,但在目标器件上不工作

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/580675/f28m36h33b2-blinky-example-flash-standalone-works-on-controlcard-but-not-on-my-target-device

部件号:F28M36H33B2
主题中讨论的其他部件: F28M36P63C2,controlSUITE

我一直只使用RAM Build来开发我的代码。 现在我想将它放在闪存上进行独立操作,它不起作用。

我恢复到了闪烁的示例代码,它在具有cconcto F28M36P63C2的controlCARD上运行得很好。 我独立构建闪存,加载它,删除仿真器,重置,两个LED都开始闪烁。 当我在目标设备上加载完全相同的闪存独立构建闪存示例代码(这是一个协奏曲F28M36H33B2),并且只更改引脚定义(因为我的LED位于不同的引脚上)时,它不起作用。 我知道该代码工作正常,因为当我创建RAM时,它在我的目标设备上工作正常,包括闪烁的示例和我自己的代码。 此外,当我在M3和C28上执行闪存构建(非独立)时,它也可以在使用调试器启动时运行,但很明显,如果我删除调试器并重置,M3就会启动,因为它确实会向C28发送启动命令。

总之,当我在controlCARD上加载闪存和单个闪存的示例代码时,它工作正常,但在我自己的设备上它不工作,当我重置它时,没有LED开始闪烁。 为什么会这样,唯一的区别是协奏曲装置? 从controlCARD移至目标设备时,是否必须更改命令链接器文件中的内容? 我使用controlSUITE中的盲示例v206。  

谢谢

阿尔伯特

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

    目标板上的启动引脚配置是什么?

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

    如Gautam所述,请确保默认启动引脚GPIO43/GPIO47GPIO35/GPIO34在 目标 板上具有从闪存启动的正确值。  

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

    我的启动引脚都被拉高,带有外部上拉电阻器,从闪存模式启动(数据表6.17 ,p193)。 根据数据表,启动引脚位于GPIO43,GPIO47,GPIO35和GPIO34上。 您为什么说 GPIO72和 GPIO84也必须为1?  GPIO72是SSI0/SPI,GPIO84是SSI3/EMAC。 我的针脚是否错误?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Albert,你说得对。 此设备上的引导引脚不同。 我已更正了相同的内容。 您还提到M3正常启动,但C28x无法正常启动。 如果是这种情况,则引导过程正常。 您知道M3代码是否一直执行到结束(经过它向C28x发送IPC消息的步骤),您是否对两者都使用相同的CCS设置?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    当我加载闪存版本时,M3正常启动,但当我加载闪存独立版本时,M3不正确启动。 否,它似乎在 IPCMtoCBootControlSystem(CBROM_MTOC_bootmode_boot_from_flash)内的while循环中挂起。 我通过加载独立闪存,重启然后重新连接仿真器来看到这一点,仿真器随后在上面一行挂起。  

    奇怪的是,我现在注意到,“盲”的例子有时是随机的,有时是不会。 我自己的代码总是在 IPCMtoCBootControlSystem上挂起。

    如果您说两种模式的CCS设置,您指的正是什么? 我有一个项目文件夹用于C28和,还有一个项目文件夹用于M3。 我只为每个配置设置构建配置,以便为我自己的项目使用正确的.cmd文件。 对于Blinky示例,我使用的是设置,因为它在controlSUITE中。  

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

    问题与硬件有关。 复位电路没有正确的电阻值。 因此,当使用调试器手动重置时,一切都正常,但当它必须在关闭电源后自行重置时,它无法正确重置。