器件型号:MSP432P4111
大家好,
我可以在 launchpad 上安装 pot project、编译和启动调试器 ,但 运行时出现错误: break @ 0X2032a8
我在哪里?
我怎么做?
非常感谢
此致
卡洛
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.
器件型号:MSP432P4111
大家好,
我可以在 launchpad 上安装 pot project、编译和启动调试器 ,但 运行时出现错误: break @ 0X2032a8
我在哪里?
我怎么做?
非常感谢
此致
卡洛
您好、Carlo、
我导入了 BSL432_MSP432P4111示例项目、并尝试在 MSP432P4111 Launchpad 上运行。 我得到一个类似的错误、但位于不同的地址:
"在地址"0x3d5e"处中断、没有可用的调试信息、或者在程序代码之外。"。 查看生成的存储器映射文件(BSL432_MSP432P4111.MAP)、该地址0x3d5e 对应 于 msp432p4xx_driverlib.lib 中的函数:
00003d10 0000008c msp432p4xx_driverlib.lib:spi.o (.text:spi_registerInterrupt)
我找不到地址0x2032a8、它是您得到错误的地址。 您能否从存储器映射中告诉我发生此错误的相应函数?
Srinivas
您好、Carlo、
今天、我使用 MSP432P4111以及 Launchpad 和 CCS v10.1.1运行了一些测试。
按照 slau622j 中的分步操作、我假设您在执行步骤10之后会遇到卡滞的执行代码、这是正确的吗?
当我分步运行时、我注意到步骤10中存在差异、因为地址0x2020不是代码的起始位置(在本例中为_c_int00)。 我在链接器文件中看不到任何强制将_c_int00添加到此地址的内容、因此我的假设是链接器只是更改了位置。
此外、在比较.map 文件后、CCS 库中似乎存在一些差异。 默认二进制文件似乎使用 boot.obj、而新的二进制文件是 boot_cortex_m.c.obj。
查看我的新映射文件、我看到以下条目:
如果我在步骤10和11中将0x2020替换为0x3F44作为起始地址、那么我可以强制我的 PC 在_c_int00_noargs 中启动、之后代码看起来运行正常。
您能否仔细检查起始地址并尝试一下? 如果您一直遇到问题、请告诉我您的 CCS 和编译器版本。
此致、
Luis R
您好、Luise
按照 slau622j 中的分步操作、步骤6中会出现此问题。
这是我的配置:
- LaunchPad MSP432P4111修订版1.0
- CCS 版本:10.0.00010
-编译器版本:TI v15.12.7.LTS (我也尝试过 TI v.v.v.5.25.2.TLS)
按照 slau622j 的分步操作、我创建了一个新的配置文件.ccxml、默认设置为。
打开目标配置、单击启动所选配置、然后单击连接目标。 此时会发生错误。
底部我报告了有关步骤6和相关问题的屏幕截图。
在我的映射文件中搜索时、我找不到有关0x27cb8地址的任何信息。
已连接您可以在 Release_BLS_P4111配置和相关的 msp432p4x11.cmd 文件中找到已生成的映射设置为活动状态。
/cfs-file/__key/communityserver-discussions-components-files/166/MY_5F00_BSL432_5F00_MSP432P4111.txt
此致
Stefano
您好、Carlo、
Luis 在我试图在我的身边再现时提供了以下内容:
------------------------
连接到目标器件后、CPU 可能位于林中的某个位置。
这是正常的、并且是预期的、因为没有加载调试信息。
具体地址也可能因器件状态而异。
加载后,设备将开始运行,但它实际上没有有效的复位矢量,因此它再次位于 limbo 的某个位置。
如果您尝试停止,您将收到以下错误:(这也是可以的)
在停止 CPU 之后、您应该能够验证代码、这很好地表明它可以正常工作:
在 CPU 仍然暂停的情况下、我们可以强制 PC 开始执行:
------------------------
Srinivas
您好、Stefano、
Luis 提供了补充意见。
您可以告诉链接器将 _c_int00_noargs 放在顶部。 这可以通过 Project Properties -> Build -> ARM Linker -> Advanced Options -> Miscellaneous 来完成。 您可以+(添加) _c_int00_noargs、如下所示:
如果在此之后重建.out 文件、 则_c_int00_noargs 会放置在2020h。 这是我在我看来得到的内容、与文档类似:
希望这能为您解决问题。
Srinivas