您好、查姆斯、
我的客户以前在应用中使用了 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