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.

[参考译文] TM4C1290NCPDT:TM4C1290NCPDT

Guru**** 2535750 points
Other Parts Discussed in Thread: TM4C1290NCPDT

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1427759/tm4c1290ncpdt-tm4c1290ncpdt

器件型号:TM4C1290NCPDT

工具与软件:

我正在研究一个涉及 TI 微控制器 TM4C1290NCPDT 的项目、我使用的是 CodeComposerStudio 版本:12.8.0.00012。

我需要创建 .hex 文件格式为构建产品、但我可能遇到了一个问题、可能是由于配置错误:

创建的十六进制文件在每个块之间具有过多的闪存块分隔和96字节跳转:

………μ..

 

但是、此处附加的.cmd 链接器文件(.txt 文件–文件扩展名因电子邮件限制而更改)所描述的只有4个闪存块:

 

为了创建.hex 文件产品、我在 CCS 中设置了以下选项:

  1. 启用 Arm 十六进制实用程序:


  2. 指定的输出文件名:


  3. 设置输出格式 Intel 十六进制:


以下是链接器设置:

  

 

这是构建日志:

 

 

我无法理解警告。

 

您能帮我解决这个问题吗?

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

    您好!

     我认为您需要使用--romwidth 32和--memwidth 32标志、以便只合并和生成一个十六进制文件。 有关详细信息、请参阅 TI Arm 汇编器用户指南。 如果这样无法解决您的问题、我会将您的问题转发给我们的工具链专家。  

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

    尊敬的 Charles:

    非常感谢您提供这些提示。 这解决了我关于 hex 文件的问题。


    我仍然遇到 有关.elf 创建的警告:

    警告:BIC1100SP18TD3BL2220Vectoritaly.elf (.text)段被填充2至198400的大小、以满足指定的存储器宽度4
    警告:在030906h 与 BIC1100SP18TD18TD3BL2220vectoritaly.elf ($fill000)重叠的部分 BIC1100SP18TD3BL2220vectoritaly.elf (.text)(BIC1100SP18TD3BL2220vectoritaly.elf ($fill000)不完整或跳过)

    您对此有什么想法吗?

    谢谢。

    此致。

    Diego Greco

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

    您好!

     我认为警告是工具链(链接器)会尝试将文本段与32位地址对齐、从而添加它认为合适的任何填充数量。 我不是链接器专家、 我会将您的问题转发给我们的工具链专家 以便进一步澄清。  

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

    尽管出现了警告、但我认为十六进制文件仍然可行。  是这样吗?

    请在下一篇文章中附加链接器命令文件。  因此将接受该文件、请添加文件扩展名 .txt .   

    谢谢。此致、

    -George.

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

    您好、George:

    是的、.hex 文件现在正确。  
    我还想解决剩余的警告,以避免任何故障。

    e2e.ti.com/.../3515.tm4c1290ncpdt.txt
    您可以在此处找到链接器文件。

    感谢您的支持。

    此致。

    Diego Greco

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

    您好、George:

    很抱歉、我必须收回我的答案。
    我注意到、.hex 文件在块编号端(以及相对地址)是正确的、但在字节序上不正确:

    十六进制文件:



    它与.bin 文件不同:

    如果我刷写.hex 文件则不起作用。 如果我刷写.bin、它会正常工作。

    我在 Arm 十六进制实用程序中找不到任何用于更改字节顺序的选项。 我在 SPNU118U 文档中也搜索了它。

    我设置了以下标志:

    你对此有什么建议吗?

    谢谢。此致。

    Diego Greco

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

    如果您尝试其他实用程序、我将不胜感激。  后面的字中 armobjcopy 位于相同的位置 \bin 加载目录作为编译器 armcl .  请从命令行运行类似于...的命令。

    armobjcopy -O ihex project_name.out project_name.hex

    因为我无法测试、所以我无法确定此建议是否有效。  但我有足够的信心让您尝试它。

    谢谢。此致、

    -George.