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/EK-TM4C123GXL:运行自定义链接器命令文件时,使用命名内存段时出现数据验证错误+调试端口错误

Guru**** 2563960 points


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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/593671/ccs-ek-tm4c123gxl-data-verification-error-when-using-named-memory-sections-debug-port-error-when-running-custom-linker-command-file

部件号:EK-TM4C123GXL
主题:TM4C123中讨论的其他部件

工具/软件:Code Composer Studio

你好。

我一直在让CCS (最新版本)在TIVA Launchpad上进行装配编程,我认为我的错误已缩小到以下原因:

在命令文件中,如果我引用命名内存位置以允许链接程序自动定位自定义命名部分,则在调试时收到数据验证错误。 如果我改为参考特定地址来查找有效的部分。  

此外,如果确实加载,我会收到调试端口错误,但调试过程似乎工作正常。

编辑:我还尝试在项目调试选项中禁用数据验证,当我加载调试器时,内存映射中的所有内容看起来都是正确的。

我认为CCS调试器有损坏,或者我的主板有损坏(我不认为是这样,因为我调试C程序时一切正常)

以下是该项目:

e2e.ti.com/.../ASMProject.zip

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

    在命令文件中,如果我引用命名内存位置以允许链接程序自动定位自定义命名部分,则在调试时收到数据验证错误。 [/引述]

    我多次将您的项目加载到TM4C123 Launchpad上,但没有收到数据验证错误。 但是,我确实得到了调试端口错误,我认为这可能是CCS 7.1 中的一个错误。0因为我在CCS 6.2 0.0甚至7.0 中看不到调试端口错误。 我将为此提交一份错误报告, 然后在此处发布跟踪编号。

    关于数据验证错误,您是否能够一致地重现该错误?  

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

    你好,谢谢。

    我一直收到数据验证错误,例如:我刚启动CCS,运行项目时"主"部分被写入闪存,我收到数据验证错误。 然后,我切换到在特定地址(例如:0x400)找到该部分,调试器能够加载并运行(我再次收到端口错误)。

    有趣的是,当程序加载时,在调试器内存视图中,我看到闪存范围介于4和0x400 (主内存的起始点)之间的偶发随机值-例如0x100和0x180。 这些值应留空,这些地址不应有任何说明或数据。

    我不知道这是否意味着我的主板损坏了(但我目前没有将其连接到任何其他地方,所以我看不出怎么会损坏它)。 USB通信可能出现了问题,我不知道,但看着这张内存图,我认为这不是应该的。  

    是否可以包括修改这些地址? 我可以在中断向量中看到它,但0x180超出范围-它似乎是一个完全随机的地址。  

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

    [QUETE USER="Michael Lowell]有趣的是,当程序加载时,在调试器内存视图中,我看到闪存范围介于4和0x400之间(main的起始点)的偶发性随机值-例如0x100和0x180。 这些值应该是空白的,在这些地址中应该没有任何说明或数据。[/QUOT]删除 CCS调试器故障排除步骤3和4中的高速缓存调试器信息 是否有帮助?

    如果这不起作用,您是否可以启用 调试服务器日志记录 ,并在闪存中看到偶发随机值时附加日志,因为日志应显示CCS调试器正在编程的闪存范围。

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

    你好

    我删除了缓存文件,第一次加载时没有错误。 我更改了分区位置,遇到验证错误,因此确实有所不同,但此时,无论我在哪里找到main,都会出现数据验证错误,因此我无法生成文件。 我会在以后再把它弄乱,并在文件最终加载时上传。

    我下载了CCS v6,一切都正常,我尝试重新定位不同的部分,没有错误。 这表示最近版本的CCS存在问题。

    我将尝试v7的以前版本


    感谢你的帮助。

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

    好的,它再次做到了(使用最新版本v 7.1),下面是日志文件:闪存0x4和0x500之间有零星的随机垃圾,例如0x180

    e2e.ti.com/.../3175.log.log

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

    我可以重现数据验证错误。 它似乎与将“VEC”部分放在地址0x0有关。 如果我将其更改为任何其他地址(如0x4或0x8),则不会出现错误。 您能否确认您是否也是这样? 我还检查了在CCS 7.0 中加载到地址0x0是否正常。 我也会为此提交一份错误报告,以便查看。 感谢您提请我们注意此事。

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

    我提交了错误号CCBT-2098以跟踪此问题。 您可以使用我签名中的SDOWP链接检查其状态(请注意,提交后通常需要几个小时才能显示在该链接上)。

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

    谢谢,我觉得不管一个部分是否位于0x0,这似乎都是一个问题,但是如果找到了解决0x0错误的方法,这可能是更常见问题的原因。

    另外,我正在尝试CCS 7.0 .0.0042 ,一切似乎都正常。

    我不想下载下一个版本,但此版本和最新版本之间似乎有一些问题。 感谢您的帮助,我希望它能尽快修复!(从现在到下一次更新,我将使用7.0 .... 42)。 不得不说我在这里花了太多时间!