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.

[参考译文] MSP430FR6043:映射文件分析

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1344307/msp430fr6043-map-file-analysis

器件型号:MSP430FR6043
主题中讨论的其他器件:MSP430FR50431

您好  

请告诉我如何确定可执行文件的代码大小。 具体来说、我将 使用另一个控制器对此控制器进行编程、并且需要知道编程 MCU 中所需的闪存大小。

谢谢。

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

    您好、以法莲、

    您可以通过生成二进制文件来确定该文件的大小(这可以通过更改项目属性-> MSP430 hex 实用程序来完成、启用十六进制实用程序、然后转到"output format options"选项卡、并选择所需的输出格式。 然后点击"Apply"和"Close"来生成输出文件。 完成此操作后、您可以检查该二进制文件的大小。

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

    尊敬的 Dylan:

    我遵照你的指示,这里。

    但是、我找不到生成的文件。 请提供帮助。

    此外、对于基于 ARM 的 MCU、您建议采用哪种格式

    谢谢。

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

    您好、以法莲、

    我通常推荐 TI_TXT 格式。

    至于在哪里找到输出文件、它将位于您项目内的"Debug"文件夹中。

    附带说明:MSP430是专有的 TI 内核、而新的 MSPM0器件基于 ARM。

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

    尊敬的 Dylan:

    项目中没有调试文件夹。

    我还查看了文件夹 multi_tone、但没有.hex 文件。

    请提供帮助。 谢谢。

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

    执行该操作后、我会在 multi_tone 中得到.hex 文件。 我确实收到了两条 "地址0x0001x000超过16位限制-截断"形式的警告。

    您是否在 Build Console 窗口中看到任何异常情况?

    [编辑添加的屏幕截图]

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

    Bruce、您好!

    在生成一个 txt 文件之后、

    在中似乎为134kb。 缝隙太大了、能得到什么?

    谢谢。

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

    您是否担心.txt 文件的大小? .out 内容(当然还有很有趣的部分)已经被转换为 ASCII 十六进制、带有空格、因此其大小至少是原始内容的3倍。 S 记录(.hex)比 TI-TXT 更紧凑一些、但原始大小仍然是其2倍以上。

    我假设您不会以 ASCII 格式将其存储在编程 MCU 中、而是将其去限定并放置在一个数组中、或者可能是一组数组(用于散点加载)中。

    您打算如何将程序文本下载到编程 MCU 中? 你会(a)编译它还是(b)通过串行(例如)链接发送它? 对于(a)、我看到了"Array"的选项、我猜这个选项(我没有尝试)将生成.c 源代码。 对于(b)、我假设您的主机程序将进行去十六进制化。

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

    Bruce、您好!

    我还不在那一点。 我刚刚被问及闪存中需要多少空间来存储代码。 也就是说、十六进制或 TXT 文件、我可以除以2或更少、以获得存储在主机 MCU 中的实际大小。

    如果能加快了解一些参考文档、我将不胜感激。

    此外、考虑到 MSP430为空、我们可以使用 I2C 连接或使用单线编程创建自己的引导加载程序、如何进行编程。

    请告诉我一些文档。

    谢谢。

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

    您好、以法莲、

    我们提供了 《MSP430 FRAM 器件引导加载程序用户指南》 、为引导加载程序应用提供帮助。

    Bruce 简言之、文件的.hex 格式的大小将比 TI_TXT 格式更小。 他还说、输出生成有一个数组选项、该选项应生成.c 源文件以存储到您的器件中。

    您可以阅读 器件系列用户指南 、了解特定于此器件的第1.1节中的引导加载程序的信息。 请记住、如果您使用的是 MSP430FR6043、则默认的 ROM 引导加载程序将使用 UART。 如果您使用的是 MSP430FR60431、则默认的 ROM 引导加载程序会使用 I2C。  

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

    您好!

    我们正在使用  MSP430FR50431、因此它将是 I2C。

    非常感谢您的帮助。

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

    请参阅.map 文件第一页中的表。 为区域 FRAM 和 FRAM2添加"Used"列、然后添加0x80 [中断矢量]。 (FR50431似乎没有 INFOX 区域。)

    USS 还划分出另外两个(小)区域[VERSION 和 LIBVERSION]、因此您也可以为它们添加"已使用"值。