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.

[参考译文] TMS320F28388D:用于 C28x 内核的十六进制实用程序

Guru**** 2589275 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1123095/tms320f28388d-hex-utility-program-for-c28x-cores

器件型号:TMS320F28388D

您好!

 我编写了一个引导加载程序应用程序、该应用程序位于内部闪存的下部、通过 EtherCAT 接受文件、该文件为 S3 Motorola Record 格式。 这使我能够刷写所有3个内核。我可以使用 CM 处理器进行刷写

我遇到的问题是、当我为 C28x 处理器生成十六进制文件时、我将获得地址空间重叠的 S 记录。  

 下面是一个示例。
记录 长度地址    数据                                                                                                                                              校验和

S3         25        00088000 9A8500089A8300089A4400089A4600089A4800089A4A00089A4C00089A4E0008 84
S3         25        00088010 9A5000089A5200089A5400089A5600089A5800089A5A00089A5C00089A5E0008 7A

您将注意到、地址由16个字节00088000和0088010分隔、但它正在尝试写入32个字节的数据(0x20)。 因此、数据的寻址存在重叠、但数据不同。

现在、当我被告知闪存时、我会擦除 C28x 内核中的所有扇区、这允许我使用闪存 API 进行闪存。 我运行的问题是 S-Record 格式具有重叠的地址空间、这会导致 FLASH_API 失败、因为它正在尝试写入已写入的无效闪存位置

问题:
如何使 S 记录格式不包含重叠的地址间距?

我是否需要擦除 C28x 内核的字边界上的闪存?

我的链接器文件是否有问题?

我通过使 ROM 宽度32与 CM 处理器实现了这一点、但无论我尝试使用 C28x 内核、我都能获得相同的重叠地址空间。

Dorion

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

    尊敬的 Dorion:

    我们将能够在本周结束前进行审核并返回给您。

    谢谢、此致、
    Vamsi

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

    我正在关闭此信息、我找到了相关信息。 刷写 C28x 处理器时、SRecord 中的地址为字、所有内容都需要以字刷写。