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.

[参考译文] TMS570LS1227:代码输出文本生成差异

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1109510/tms570ls1227-code-output-text-generation-differences

器件型号:TMS570LS1227

大家好、

我尝试 为 TMS570ls1227执行 CAN 引导加载程序。 首先、我要在微控制器的存储器映射中编写引导加载程序代码、然后我要编写应用程序代码、其中调试器要选择地址(0x10000)。 您可以在 IMG_1、IMG_2、IMG_3中以不同的样式查看内存状态。 然后、我将生成作为文本的代码输出。 生成后、我将整篇文本写入微处理器的闪存、代码无法正常工作。 因此、我发现了文本代码 和调试存储器位置的差异。 例如 、在第2行末尾写入0x10000地址的数据(可以 在 IMG_5上检查) 0x10020地址的数据已写入第327行  (可以在  IMG_4上检查)。我认为代码生成工具会生成与存储器映射顺序不同的代码样式。  

您能提供有关这方面的任何信息吗? 我希望,我可以把这种情况解释为真的。

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

    您好!

    默认情况下、主闪存指令存储器从0x00000000开始寻址。 这也是复位矢量位置–只要 内核复位、ARM Cortex-R4F 处理器内核就从0x00000000的复位矢量地址开始执行。 您需要将中断矢量表编程为0x00000000~0x00000020。

    您如何为代码生成文本文件? 为什么需要文本格式?

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

    您好!

    我 的 GUI 读取文本并将数据从 CAN 总线发送到微控制器以进行引导加载过程。 我知道、代码通常从0x00000000开始。 TMS570ls1227有 一个存储器组来编写代码、因此我将使用不同的存储器地址、包括应用代码和引导加载程序代码。  我在 这里添加了我的 cmd 文件 foto。  

    自0x10000地址起、我正在尝试写入应用程序。您可以在上一个开机自检时看到应用程序代码的存储器稳定。

    我的问题是、为什么调试器中代码的内存稳定  与编译器的文本输出不同? (IMG_4和 IMG_5文本从同一代码中输出、img1-2-3内存处于同一代码的调试模式。) 顺便说一下、您能否在首次发布时阅读照片、是否清晰?

    我在下面添加了文本生成设置、作为第二张照片。

        

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

    II 不知道从编译后导出的文本文件的格式。 文本文件包括地址和标头。 您的引导加载程序是否也会将标头编程到闪存中? 您能否在32位模式下显示文本文件内容?

    我在您之前的帖子中阅读了该照片。 我在0x10000和0x10020处看不到内容的区别:

    在内存浏览器窗口中:

    在文本文件中:

    前4个字节为地址0x10000、数据如下:0xEA0056A5

    前4个字节是地址0x00010020、以下是数据:0x00000000和0x08001500

    我不知道地址0x10000在第2行、但地址0x10020在第327行。 之间有什么关系?

    为什么不使用引导加载程序示例中使用的二进制文件?

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

    您好!  

    我解决了我的问题。 我已将 上一张图片中的文本生成设置更改为新设置。  您可以在下图中看到我的新代码生成设置。

    我告诉过您、我们的引导加载程序 GUI 可以以文本形式发送代码输出、因此我将使用文本输出样式进行引导加载程序过程。 另一方面、在我更改了如下代码输出设置后、我的存储器代码序列和文本输出是相同的。