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.

[参考译文] TMS320F28P559SJ-Q1:映射文件与同一工程不一致、但与不同的 PC 不一致

Guru**** 2445810 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1522434/tms320f28p559sj-q1-map-file-not-align-with-the-same-project-but-different-pcs

器件型号:TMS320F28P559SJ-Q1
主题:C2000WARE 中讨论的其他器件

工具/软件:

您好专家

客户报告说、他们在使用 2 台不同的 PC 编译同一项目、映射文件不同、我检查了 2 台安装相同 CCS 12.8.1 的 PC、编译器版本为 TI v22.6.1.LTS、SDK 版本为 C2000ware 5.4.0.00、映射文件比较通过电子邮件发送:Map1

此外、客户报告如果他们更改了项目工作区、十六进制文件也会更改、但无法在我这边复制、屏幕截图如下、相应的功能通过 email:map2 发送

我还可以检查任何其他要点以调查此问题吗?

谢谢

Joe

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

    对于这两个构建、从 CCS 的“Console"视“视图中捕获构建日志。  比较它们。  您应该能够解释每一个差异。  密切注意链接程序的最后一个命令。  链接器必须按相同顺序查看所有输入(选项,文件,库等)。

    谢谢。此致、

    -乔治

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

    您好、George

    请参见.out 构建日志的图片、对于位于不同位置的同一工程、.c 文件的构建顺序不同、但.out 构建是相同的:

    整个建筑日志将通过电子邮件发送给您。  

    是否有任何变通办法使同一项目中的所有建筑物都相同?

    谢谢

    Joe

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

    您好 Joe、

    让我们继续讨论当前的电子邮件主题。

    谢谢

    Ki

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

    您好、Ki

    当我们通过电子邮件讨论时、此问题箭头指向十六进制文件、其中包括一些构建信息、更新线程以进行记录。

    谢谢

    Joe

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

    您好、专家  

    在 E2E 上复制一些说明、以解释文件路径为何包含在十六进制文件中

    源文件 adc_ex10_multiple_soc_epwm.c 包括 driverlib.h。 driverlib.h 包括 adc.h 。adc.h 包括 debug.h 、debug.h 包含这些行…

     

    #ifdef 调试

    #ifdef _TMS320C28XX__

    //

    //从 C28x 应用程序调用时

    //

    #define ASSERT (expr) do                                                      \

                        {                                                       \

                            if(!(expr))                                         \

                            {                                                   \

                                __ERROR__(__file__、__LINE__);                  \

                            }                                                   \

                        }                                                       \

                        while (_bool) 0)

    #else

    //

    //从 CLA 应用程序调用时。 根据需要进行更新。

    //

    #define ASSERT (expr) do                                                      \

                        {                                                       \

                            if(!(expr))                                         \

                            {                                                   \

                                __ mdebugstop();\                                  

                            }                                                   \

                        }                                                       \

                        while (_bool) 0)

    #endif

    #else

    #define ASSERT (expr)

    #endif

     

    预处理器符号调试在项目设置中定义。

    预处理器符号_TMS320C28XX__由编译器预定义。  因此、会使用断言的第一个变体。

    头文件 adc.h 包含以下行…

    静态内联 void

    ADC_setPrescaler (uint32_t base、ADC_ClkPrescale clkPrescale)

       //

       //检查参数。

       //

       断言 (ADC_isBaseValid (base));

    此断言使用__file__。  这种使用方式会导致十六进制文件中出现长字符串。  这种模式会重复很多次。