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.

[参考译文] 编译器/TM4C123FE6PM:如何设置 TM4C123引导加载程序

Guru**** 2478875 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/697712/compiler-tm4c123fe6pm-how-to-setup-tm4c123-bootloader

器件型号:TM4C123FE6PM

工具/软件:TI C/C++编译器

您好!

我正在开发基于自定义闪存的引导加载程序、我之前已经问过有关基于 ROM 和基于自定义闪存的问题。  我不想创建定制项目、但这就是我们必须为该项目做的事情。  我有一个相当好的版本、至少可以接收串行命令并执行一些函数。  但是、我一直在运行其中一件事(我已经研究过论坛、没有任何工作)、那就是当我使用调试器运行项目时、它会运行、但当我尝试设置断点时、它会显示没有代码。  我已经在 Code Composer 中为项目/文件加载了符号、但在暂停时仍然无法设置断点或查看调试信息。  有什么建议吗?

谢谢、

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

    尊敬的 Dustin:

    在加载 RAM 然后执行的代码上设置断点当然会带来一些复杂问题。 我不确定您遇到了什么问题。  CCS 在闪存中设置硬件断点、在 RAM 中设置软件断点。 软件断点实际上会替换该 RAM 位置的运算代码。 如果在例程从闪存复制到 RAM 之前设置断点、则断点会丢失。 我创建了一个在 TM4C123GXL Launch Pad 上运行的简短例程。 它从闪存运行、并在 UART 中打印一条消息。 然后、它将一个函数复制到使 LED 闪烁的 RAM 中。 如果在 memcpy()之后设置断点,则可以在从 RAM 运行的"RAM_Blink()函数中设置断点。 从附加的.zip 文件导入工程。 符号与基于闪存和基于 RAM 的函数的正确运行地址相关联。

    /cfs-file/__key/communityserver-discussions-components-files/908/EK_2D00_RAM_2D00_Load.zip