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.

[参考译文] CCSTUDIO:相同的编译器和 Code Composer Studio、但*。out 文件不同

Guru**** 2644735 points

Other Parts Discussed in Thread: MOTORWARE, UNIFLASH

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1588410/ccstudio-same-compiler-and-code-composer-studio-but-different-out-file

部件号: CCSTUDIO
Thread 中讨论的其他器件: MOTORWAREUNIFLASH

我已将旧笔记本电脑中的代码转移到新的。 在这两款笔记本电脑中、我都有 CCS10.4.0.00006 版本、TI v20.2.5LTS 编译器、相同的优化 (OPT 级别 2、速度与大小的权衡–2、相同的链接器标志。 在这两台计算机上、编译器编译良好、没有任何警告或错误。 但是、旧文件的*。out 大小与新文件的大小略有不同、分别为 453.15KB 和 453.67KB。 旧代码运行良好、在新代码中、某些部分的行为不符合预期。 鉴于此、如何检查可能出现的问题? 该代码基于 instaspin 库的使用情况和 motorware。 如果我从旧笔记本电脑下载代码、电机运行良好、无论从新电机、电机都无法运行、但所有其他东西、如 FLAG、DC 电压 WTC 都会正确更新。

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

    请按照文章 查找代码大小增加的来源中的说明比较这两个构建。  但有一个不同之处。  您对任何具有不同大小的函数感兴趣。   

    注释大小用作实际目标的代理、这是行为上的差异。  因此、这并不完全正确。  在实际实践中、它往往足够接近。  关注不同大小的功能。  我不知道你会找到什么。  但有可能进一步调查。

    谢谢。此致、

    -乔治

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

    尊敬的 George:

    我按照您的建议进行了尝试、发现这些文件具有与 Excel 文件中相同的组件。 但是、*。out 文件与 winMerge 不同。 另外,如果我使用 uniflash 下载文件,一个给出了正确的功能,另一个没有。 我还可以尝试使用 0fd2000 或其他方法吗?

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

    对于每个构建、请提交构建日志、即 .out 和链接器映射文件。   

    要获取构建日志、请重新编译整个工程。  一种方法是右键点击工程名称并选择 重新编译工程 。  然后将“Console"视“视图的内容保存到文本文件中。  使用名为的图标 复制构建日志 (较早版本的 CCS)或 将构建日志保存到文件 (CCS 的较新版本)。   

    将文件整理到两个名为的目录中 新品 。  然后将 其拉链起来,并将其连接到您的下一个帖子。

    谢谢。此致、

    -乔治

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

    e2e.ti.com/.../NewFaultyCode.zipe2e.ti.com/.../OldWorkingCode.zip

    请按要求查看随附的文件

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

    感谢您提供文件。

    我把它们分开了 .out 使用 dis2000 并对它们进行比较。  所有差异都发生在指令中、即没有数据差异。  所有这些指令都适用于以下两个文件中的函数: hal1_2.c PWM.c 。  此屏幕截图显示了许多差异密切在一起...

    较旧的代码在左侧、较新的代码在右侧。  在这里看到的模式是关闭 1 的常量值、会针对所有差异重复出现。  

    请构建文件 hal1_2.c PWM.c 但添加了选项  -- gen_preprocessor_listing 。  请在 C28x 编译器手册中查找该选项。  除其他效果外、它会创建具有扩展名的列表文件 .rl 。 比较这些文件。  将重点介绍屏幕截图中的功能、如  PWM_setDigitalCompareInput 。  我不确定您会找到什么。  但这种差异会导致反汇编中的这些常量不同。

    谢谢。此致、

    -乔治