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.

[参考译文] MSPM0L1304:如何生成二进制文件(Intel 格式。 十六进制和二进制.bin 文件)

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1307127/mspm0l1304-how-to-generate-binary-intel-format-hex-and-binary-bin-file

器件型号:MSPM0L1304
主题中讨论的其他器件:UNIFLASHMSPM0L1306

您好  

我是否已经对 CCS 上的 MSPM0L 项目抱有兴趣?

我的客户尝试生成.hex 和.bin 文件进行大规模生产。

但生成的文件可能是错误的(因为本主题)

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1303468/mspm0l1304-after-uniflash-writing-the-swd-port-does-not-work

是否有生成.hex/.bin 文件的指南?
我们需要设置另一个选项? 不仅能"指定输出"和输出格式

谢谢。

GR

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

    您好、GR、

    您能帮助澄清以下信息吗?

    Unknown 说:
    生成的文件可能错误

    这是否意味着 TI-TXT 格式映像不存在问题、以及用相同项目生成的十六进制或 bin 映像文件不能正常工作?

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

    您好、Gary、

    感谢您的支持。

    这是否意味着使用相同工程生成的 TI-TXT 格式图像没有问题,以及十六进制或二进制图像文件不起作用?

    是、

    TI-TXT (.txt)和.out 文件按正常方式工作。 (如果由 uniflash 写入 MSPM0L1306、则会正常工作)

    但是、生成相同工程的.bin 和.hex 文件不起作用。

    此致、

    GR

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

    好的、您能与我分享这个项目吗? 并展示如何监控它不能很好地运行?

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

    您好、Gary、

    感谢您的支持。

    我将发送 CCS 项目.out/.txt/.bin/.hex 文件、指出私聊中存在的问题。

    此致、

    GR

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

    我已将该主题提交给 CCS 支持团队、因为生成 Intel hex 格式文件是个问题。 所附的项目。 当您通过 CCS 生成十六进制文件时、在复位处理程序中断表处该文件为0、但不正确。 但是、当您生成 TI-TXT 格式时、没有问题。

     e2e.ti.com/.../8611._5B00_CCS-project_5D00_20231207_5F00_i2c_5F00_controller_5F00_rw_5F00_multibyte_5F00_fifo_5F00_poll_5F00_LP_5F00_MSPM0L1306_5F00_nortos_5F00_ticlang.zip

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

    CCS 项目不起作用。  因此、我不确定整个解决方案。  但我可以看到一个错误需要更正。  要创建您需要的 Intel hex 文件、您必须添加 --romwidth=32 。  在第一篇文章中显示的第一个屏幕截图中进行更改。

    谢谢。此致、

    -乔治

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

    您好、George、

    感谢您的评论。

    在下方进行更改

    数据将是正确的。 但数据模式是错误的。 如下所示、0x0地址处的正确数据应为0x20000800、但它为0x800002

    您知道如何进行更改吗?

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

    请显示 Intel hex 文件的前几行。  它在地址0处显示了什么?  请复制并粘贴文本、但不要使用屏幕截图。

    谢谢。此致、

    -乔治

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

    您好、George、

    感谢您的信息。

    我测试了--romwidth32选项,但生成的十六进制文件不正确。

    (我测试了 M0 SDK GPIO_toggle_output 示例)

    首次加载成功、但尝试加载后、未解决问题。

    这是使用--romwidth=32选项生成的英特尔.hex 文件。

    e2e.ti.com/.../gpio_5F00_toggle_5F00_output_5F00_LP_5F00_MSPM0L1306_5F00_nortos_5F00_ticlang.zip

    此致、

    GR

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

    所附的十六进制文件

    e2e.ti.com/.../20231207_5F00_i2c_5F00_controller_5F00_rw_5F00_multibyte_5F00_fifo_5F00_poll_5F00_LP_5F00_MSPM0L1306_5F00_nortos_5F00_ticlang.hex

    所附的正确 TI-TXT 文件

    e2e.ti.com/.../20231207_5F00_i2c_5F00_controller_5F00_rw_5F00_multibyte_5F00_fifo_5F00_poll_5F00_LP_5F00_MSPM0L1306_5F00_nortos_5F00_ticlang.txt

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

    TI-TXT 格式文件和 Intel 格式文件具有相反的字节序。  我不知道哪个字节序是正确的、或者为什么。

    在该线程的前面部分、Gary Gao 附加了一个 CCS 项目。  我无法构建它。  我确实看到了来自该项目的生成日志。  用于创建二进制文件的命令是...

    "C:/ti/ti_cgt_tiarmclang_3.2.0.LTS/bin/tiarmhex.exe" --diag_wrap=off --binary -o "20231207_i2c_controller_rw_multibyte_fifo_poll_LP_MSPM0L1306_nortos_ticlang.bin"  "20231207_i2c_controller_rw_multibyte_fifo_poll_LP_MSPM0L1306_nortos_ticlang.out" 

    请勿使用 十六进制 以创建二进制文件。  相反、请使用  tiarmobjcopy 。  下面是一个示例命令...

    tiarmobjcopy -O binary name_of_project.out name_of_project.bin

    谢谢。此致、

    -乔治

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

    我注意到、这应该是一个 字节序问题。 但是、当我尝试进行 下面一些字节序配置时、

    它将显示  

    有任何意见吗?

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

    请勿使用加载映像选项。  它们与此问题无关。

    在第一篇文章中它说...

    Unknown 说:
    我的客户尝试生成.hex 和.bin 文件进行批量生产。

    我已经展示了如何生成一个二进制文件、一个字节序的 Intel 十六进制文件和另一个字节序的 TI-TXT 十六进制文件。  关于这一要求,缺少什么?

    谢谢。此致、

    -乔治

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

    您好、George、

    很抱歉我没在那里。 您能帮助说明在 CCS 中放置什么命令的位置吗? 这是最好的展示一张图片,谢谢。

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

    您好、George、Gary、

    感谢您的支持。

    请勿使用 十六进制 以创建二进制文件。  相反、请使用  tiarmobjcopy 。  下面是一个示例命令...

    在乔治的建议下,我尝试了 Arm objcopy 实用程序。 (arm hex 实用程序正在使用 tiarmhex.exe)

    结果、生成的 Intel hex 文件是正确的(我可以使用 Uniflash 写入、并且工作正常。)

    我知道我们的问题是有关 HEX Generate 工具的 probrem。

    非常感谢!

    此致、

    GR

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

    您好、GR、

    那么、您是否使用这样的命令窗口来执行此操作?(首先将.out 文件复制到 C:\ccs1250\ccs\tools\compiler\ti-cgt-armllvm_3.2.0.sts\bin)

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

    您好、Gary、

    您是否可以使用类似这样的命令窗口来执行此操作?(首先将.out 文件复制到 C:\ccs1250\ccs\tools\compiler\ti-cgt-armllvm_3.2.0.sts\bin)

    否、

    我使用"ARM 对象实用程序" 而不是 Arm Hex 实用程序。

    因为 ARM 十六进制实用程序使用 tiarmhex、 和使用 tiarmobjcopy 的 arm objcopy 实用程序。

    此致、

    GR

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

    您好、GR、

    好的、命令是什么以及您将其放置在何处? 你能提供一张图片吗? 谢谢

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

    您好、Gary、

    我的方法不需要命令。

    如果 ARM 对象实用程序使用、则命令将自动生成。

    我们可以看到逐构建日志命令。

    此致、

    GR

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

    好的、明白了。 我还可以生成可以正常工作的 hex 文件。  

    您好、 George、

    但似乎 hex 文件不是 Intel-hex 文件、您知道  tiarmobjcopy 生成的 hex 文件格式吗?

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

    您好、Gary、

    您是否设置了 4rth 选项页"format of output file"?

    https://software-dl.ti.com/codegen/docs/tiarmclang/compiler_tools_user_guide/compiler_manual/other_object_utilities/tiarmobjcopy.html#supported-target-formats

    此致、

    GR

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

    您好、GR、

    我没有设置它、当我添加它时、它现在可以生成 Intel hex、太棒了!