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.

[参考译文] TMS320F280037:.ebss 大小问题。

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1175929/tms320f280037-ebss-size-problem

器件型号:TMS320F280037

您好、查姆斯、

我的客户以前在应用中使用了 F2812和 CCS v3.3 (CGT v3.07)、现在他想将项目迁移到 F280037和 CCS v12 (CGT v22.6.0.LTS)、但他面临一个.ebss 大小问题。

项目中有一个 parameter.cpp、但 paramter.obj 的大小在使用 CCS v3.3和 CCS v12构建该项目时有很大不同、请参阅以下.map 文件部分、

**由 CCS v3.3 (CGT v3.07)构建的.map 文件。

.ebss      1    00010980    000016f6     UNINITIALIZED
                  00010980    000006b6     mc_amf.obj (.ebss)
                  00011036    0000000a     mc_Prog.obj (.ebss:_BreakPoint)
                  00011040    0000017c     C28_SCI.obj (.ebss)
                  000111bc    00000004     encoder_cpu2.obj (.ebss)
                  000111c0    0000016c     C28_SPI.obj (.ebss)
                  0001132c    00000012     C28_HW.obj (.ebss:_ePWM)
                  0001133e    00000002     ISR_PWM.obj (.ebss)
                  00011340    0000014e     Mon.obj (.ebss)
                  0001148e    00000032     gain_tuning.obj (.ebss:_dB_ratio_table)
                  000114c0    00000128     Parameter.obj (.ebss)
                  000115e8    00000018     f28004x_cputimers.obj (.ebss)
                  00011600    00000120     Data_Save.obj (.ebss)
                  00011720    00000020     FFT_cal.obj (.ebss)
                  00011740    000000f4     SWI.obj (.ebss)
                  00011834    0000000c     cCn2Inf.obj (.ebss)
                  00011840    000000c0     rts2800_fpu32.lib : dtor_list.c.obj (.ebss:_atexit_func)
                  00011900    000000ac     PanelPoll.obj (.ebss)
                  000119ac    00000010     Mon.obj (.ebss:_Mon_Get_Long_Func)
                  000119bc    00000004     mc_SR.obj (.ebss)
                  000119c0    000000ac     mc_main.obj (.ebss)
                  00011a6c    00000010     Parameter.obj (.ebss:_P0_35)
                  00011a7c    00000004     mc_func.obj (.ebss)
                  00011a80    000000a0     mc_main.obj (.ebss:_Task)

**由 CCS v12 (CGT v22.6.0.LTS)构建的.map 文件

.ebss      0    003f2000    000041f6     UNINITIALIZED
                  003f2000    00000708     Parameter.obj (.ebss:_pg5)
                  003f2708    00000708     Parameter.obj (.ebss:_pg6)
                  003f2e10    000006f6     Parameter.obj (.ebss:_pg1)
                  003f3506    000006d2     Parameter.obj (.ebss:_pg2)
                  003f3bd8    000004da     Parameter.obj (.ebss:_pg0)
                  003f40b2    000002be     Parameter.obj (.ebss:_pg_h1)
                  003f4370    000002ac     Parameter.obj (.ebss:_pg_h2)
                  003f461c    00000018     f28003x_cputimers.obj (.ebss)
                  003f4634    0000000c     Para_Func.obj (.ebss)
                  003f4640    000001fc     CANopen_ApFun.obj (.ebss)
                  003f483c    000001f8     Parameter.obj (.ebss:_pg7)
                  003f4a34    000001c2     Parameter.obj (.ebss:_pg4)
                  003f4bf6    0000000a     ISR_PWM.obj (.ebss)
                  003f4c00    00000190     mc_main.obj (.ebss:_AMF_QUEUE)
                  003f4d90    0000002e     Main.obj (.ebss)
                  003f4dbe    00000002     CANopen_301Drv.obj (.ebss)

由于 CGT v22.6.0.LTS 会生成许多奇怪的大尺寸参数.obj、因此我们没有足够的 RAM 大小来分配给.ebss 扇区。 请建议我们如何调试此问题、感谢您的帮助。

此致、

Luke

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

    对于源文件 parameter.cpp 和使用编译器版本22.6.0.LTS、 请按照文章 如何提交编译器测试用例中的说明进行操作。

    谢谢、此致、

    乔治

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

    乔治

    parameter.cpp 是我客户的源代码、我不会在此处上传生成的文件。

    我将通过电子邮件向您发送所需的文件、谢谢。

    此致、

    Luke

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

    感谢您通过电子邮件提交测试案例。  不幸的是、我仍然不明白发生了什么。  我需要另一个测试用例。

    对于源文件 parameter.cpp、再次 按照文章 How to Submit a Compiler Test Case中的说明进行操作。  但这次使用的编译器版本为3.07、与 CCS 3.3编译中使用的版本完全相同。

    谢谢、此致、

    乔治

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

    感谢您发送第二个测试案例。  我可以重现问题。  我提交了问题 EXT_EP-10987 以进行调查。  欢迎您访问该链接。

    谢谢、此致、

    乔治

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

    这个问题似乎没有任何进展。

    Luke

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

    请参阅我在该问题的内部视图中添加的评论。

    谢谢、此致、

    乔治