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.
我需要将微控制器上的启动引脚移至GPIO02和GPIO03,并从闪存启动。 我将GPIO02和GPIO03连接到启动板上的3.3V电源。 然后我闪了一下
0x0.304万B5A编入Z2-BOOTCTRL OTP寄存器。
0x03,用于引脚GPIO02
0x04,用于引脚GPIO03
0x0B用于闪存启动
0x5A用于密钥
基于以下内容:
和
我刷新 了LED Blinky示例程序。 如果我按启动板上的重置按钮,处理器不会从闪存启动。 我做错了什么? (当我将GPIO84和GPIO72上的开关置于ON (打开)位置(连接到3.3V)时,它通常在按下复位按钮时从闪存启动。 我的目标是在具有TMS320F2.8375万D芯片的自定义板上执行此操作,但我想 在转移到实际器件之前在我的Launchpad上测试此操作。
此致
Neil
你好,Neil,
您是否尝试使用相同的值设置仿真启动 (请参阅设备TRM中的“4.7 配置仿真启动选项”一节),并查看它是否适用于连接的仿真器。 这将确保所有引导针设置正确。 您需要遵循以下步骤-
这应引导至您的代码。 如果没有,则需要检查卡在哪里。
此致,
Vivek Singh
如果此操作正常,但仍不能独立运行,则应尝试通过在0xD00位置写入0xFF5A并在重置后运行来独立模拟。 在这种情况下,它将使用在OTP中编程的引导设置(就像在独立模式中,但连接了调试器),您应该能够使用CCS对其进行调试。
此致,
Vivek Singh
Vivek,
感谢您提供信息。 模拟独立启动正是我所需要的(在加载实际硬件之前验证设置)。 但是,我在启动板上做这件事时遇到了麻烦。 我是否错过了一些步骤:
我使用 上述代码(0x0.304万B5A)对Z2-BOOTCTRL OTP寄存器进行了编程 ,因此GPIO2和GPIO3应该是我的启动引脚。 我使用CCS连接到Launchpad,在运行它之前,我将$FF5A输入到$D00。 如果启动引脚连接到3.3V或GND ,则似乎没有区别:1. 在两种情况下,当我在CCS中按“运行”按钮时,启动引脚运行正常。 2.无论哪种情况,如果我尝试按硬件重置按钮,处理器都不运行(闪烁的指示灯停止 闪烁)。 3.如果我在CCS中按CPU RESET按钮,它在两种情况下都将停止工作,并且不会运行。 我是否缺少测试此问题的额外步骤? 在正确测试之前,我不愿意破坏我的原型。
我正在使用跳线将J4连接器(板上编号为37和38)上的第3和第4针向下连接到3.3V或GND:它们应该是GPIO2和GPIO3
感谢你的帮助。
此致
Neil
您好,
如果107.3739万如果启动2.8379万启动引397.6857万引脚397.6857万脚 在正常情况下正常运行,则两个启动引脚会出现区别:GND[/1:是否在连接到CCS然后运行它之后加载代码? 如果是,则您不应该这样做。 只需从调试器重置CPU,然后单击“运行”,而不加载代码。
此致,
Vivek Singh
Vivek,
我创建了只加载符号的调试配置。 我连接到Launchpad,加载 $FF5A到$D00,然后按“CPU重置”按钮,再按“运行”按钮, 连接到3.3V或GND的启动针没有反应。 如果我点击重新启动按钮然后运行,则代码在任何一种情况下都会运行。
此致
如果未运行,则存在问题。 您需要停止CPU并在其卡住的地方进行调试。
当我连接时,它会立即显示如下,并且无法运行:
如果执行 "重新启动",其外观如下所示:
这是有意义的,但它会绕过任何引导选项(我猜是)。 它肯定不会加载代码,而只是在连接。 重新启动有什么作用? 我应该按什么顺序进行。
此致
如果我在$D00中将EMU-boot设置为0美元b5A,我点击“CPU Reset”(CPU重置),然后点击“Run”(运行), 它会按预期从闪存启动,但是,设置的启动引脚并不重要。 这似乎是为了测试0B模式是否正确,但不测试启动针脚的功能。
我甚至尝试在$D00中使用$FE5A,它应该使用启动引脚来决定操作。 无论引导针设置为什么,都不会运行此操作。
此致
是的,如果将仿真引导设置为闪存引导,则它将忽略BOOTPIN值,以便正常工作。 在"重新启动"的情况下,CCS也会强制PC投影入口点,因此运行正常。 您设置BOOTPIN或BOOTPIN的方式不能正确驾驶时,可能会出现一些问题。 连接到CCS后,检查CCS寄存器视图中的GPIO数据寄存器,查看其捕获的BOOTPIN GPIO值。
此致,
Vivek Singh
Vivek,
这毫无意义。 我将$D00设置为0美元b5a并连接到卡上,完成跑步,然后开始跑步。 我在$D00中设置了$FE5A,但它无法启动。 我为两组启动引脚(GPIO2和GPIO3 (Z2中设置)以及GPIO72和GPIO84 (默认))接线。 为什么这不起作用? 或者我还可以尝试什么? 请参阅下文。
此致
Neil,
您是否在区域1 (Z1-BOOTCTRL) OTP位置设定了任何值?
此致,
Vivek Singh
这是很奇怪的。 另一个要看的是项目的入口点。 code_start放在.map文件中的什么位置?
只是想检查您是否能够解决此问题? 如果您有任何疑问,请告知我们。
地图文件如下所示。 我从未让它工作。
代码启动
* 0.08万 0008000万 0000.0002万
0.08万00 000000020万00002 F2837xD_CodeStartBranch.obj0.0002万 F2837xD_CodeStartBranch.obj (2837 (代码启动)
我将在自定义主板上试用它,以查看它是否与Launchpad和/或演示代码有关。 我会告诉你情况如何。 谢谢你。
你好,Neil,
您对此有任何进一步的更新吗? 如果您的问题得到解决,我们可以关闭此帖子。
此致,
Vivek Singh
我在自定义板上尝试了相同的步骤,它工作正常。 我仍然不知道为什么Launchpad不工作。
感谢你的帮助。