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.
尊敬的 TI 团队
在编译源代码后加载调试映像时、会在特定地址中放置意外数据。 (调试会话尚未激活)
请在下面进行检查。
CCS 中的存储器视图(hexa 格式)
CCS 中的内存视图( 字符格式 )
在映射文件中
在源文件中
如您所见、由于加载了意外数据、初始配置失败。
重复度为100%。
经过一些测试、我发现在地址0x45f95c 处、这个值一直为0x0466530、即使源代码被改变了也是如此。
请告诉我发生这种情况的原因、原因是什么、值(0x0466530)意味着什么以及解决方案是什么。
最棒的和尊重的
崔
嗨、崔
我将对此进行深入探讨、并在下周中旬更新。
此致、
凯文
尊敬的 Kevin。
时间更长。
请告诉我问题的结果。
此致、此致
崔
嗨、崔
最后、我们在存储器地址中未看到此值。我们观察到值为0x0000733D。 您加载的是定制软件还是示例演示? 您是否还可以共享链接器文件?
此致、
凯文
尊敬的 Kevin:
我是崔先生的同事。
我也对这个问题感兴趣、所以我来评论一下。
我认为写入该地址(0x45f95c)中的值(0x00466530)是栈存储器的结束地址(='sysmem'的起始地址)。
可以在问题中随附的捕获映射文件中确认。
我们所关注的问题如下。
将堆栈结束地址写入0x45f95c 的操作会在加载调试映像期间自动执行。
2.地址0x45f95c 包含在用户使用的范围内。 (M4F_RAM:0x400200 ~ 0x47FF00)
根据代码大小,0x45f95c 可能对应于".rodata"或".bss"。
这意味着 写操作可能会损坏指令或只读数据。
它可能会导致系统严重故障。
请告诉我是什么导致了这种情况。
此致、
利
您好、Lee、
感谢您提供的详细信息。 这样的问题特别棘手,因为它可以是一个无数的事情。 您看到的错误可能与数据无关。 问题:您是否验证了配置参数在该项目之外工作?
您可以在文本文件中向我发送您的配置参数、我可以尝试运行它们。 好像您在使用运动和存在检测演示。 顺便说一下、您正在使用哪个 SDK 版本?
此致、
凯文
尊敬的 Kevin Ortiz:
使用 MMWAVE_L_SDK_05_02_00_02可以几乎清除该问题
我的工程基于 MMWAVE_L_SDK_05_01_00_04中的 MOTOR_AND_Presence 位检测演示应用 。
(实际上在 MMWAVE_L_SDK_05_01_00_04中使用 linker.cmd、而不是在 MMWAVE_L_SDK_05_02_00_02中使用 linker.cmd)
请告诉我一些用户指南或与 linker.cmd 语法相关的文档。
这两个版本的 linker.cmd 文件有不同之处。
此致、此致
崔
嗨、崔
我也建议在5.2.0.2中使用 linker.cmd 文件。 此处找到的链接器文件略有更改、增加了存储器区域(M4F_RBL)。 需要进行此操作、因为器件的引导加载程序期望存储器中的该空间正确运行。 5.1.0.4中的链接器没有定义此区域。 因此、RBL 预期的存储器空间可能会被覆盖并损坏器件。
本 页 介绍了链接器命令文件的基础知识、重点介绍 MEMORY 和 SECTIONS 指令。
在 《汇编语言工具用户指南》的"链接器"一章中可以找到有关链接器命令文件的完整详细信息
此致、
凯文
尊敬的 Kevin Ortiz:
谢谢您的支持。
此致、此致
崔