Part Number:TMS320F28377D
我们需要静态解析.out文件,获取所有全局变量结构体及其成员的地址,
我们使用的CCS版本是8.3,生成的.out是COFF格式,TI是否有解析该.out文件中的Dwarf调试信息的工具或者实例代码呢,需要将变量名称和地址打印出来,效果如下:
addr size symbol 0010F2E6 04 AcMeasData.OldHWDataGridVtgSumAbs.s32LastSpotVal[0] 0010F2E8 04 AcMeasData.OldHWDataGridVtgSumAbs.s32LastSpotVal[1] 0010F2EA 04 AcMeasData.OldHWDataInvtPwr.OldHWDataInvtPwr[0].s32HalfWaveAvgSum 0010F2EC 04 AcMeasData.OldHWDataInvtPwr.OldHWDataInvtPwr[0].s32LastSpotVal[0] 0010F2EE 04 AcMeasData.OldHWDataInvtPwr.OldHWDataInvtPwr[0].s32LastSpotVal[1] 0010F2F0 04 AcMeasData.OldHWDataInvtPwr.OldHWDataInvtPwr[1].s32HalfWaveAvgSum 0010F2F2 04 AcMeasData.OldHWDataInvtPwr.OldHWDataInvtPwr[1].s32LastSpotVal[0] 0010F2F4 04 AcMeasData.OldHWDataInvtPwr.OldHWDataInvtPwr[1].s32LastSpotVal[1] 0010F2F6 04 AcMeasData.OldHWDataInvtPwr.OldHWDataInvtPwr[2].s32HalfWaveAvgSum 0010F2F8 04 AcMeasData.OldHWDataInvtPwr.OldHWDataInvtPwr[2].s32LastSpotVal[0] 0010F2FA 04 AcMeasData.OldHWDataInvtPwr.OldHWDataInvtPwr[2].s32LastSpotVal[1] 0010F2FC 04 AcMeasData.OldHWDataLoadPwr.OldHWDataLoadPwr[0].s32HalfWaveAvgSum 0010F2FE 04 AcMeasData.OldHWDataLoadPwr.OldHWDataLoadPwr[0].s32LastSpotVal[0] 0010F300 04 AcMeasData.OldHWDataLoadPwr.OldHWDataLoadPwr[0].s32LastSpotVal[1] 0010F302 04 AcMeasData.OldHWDataLoadPwr.OldHWDataLoadPwr[1].s32HalfWaveAvgSum 0010F304 04 AcMeasData.OldHWDataLoadPwr.OldHWDataLoadPwr[1].s32LastSpotVal[0] 0010F306 04 AcMeasData.OldHWDataLoadPwr.OldHWDataLoadPwr[1].s32LastSpotVal[1] 0010F308 04 AcMeasData.OldHWDataLoadPwr.OldHWDataLoadPwr[2].s32HalfWaveAvgSum 0010F30A 04 AcMeasData.OldHWDataLoadPwr.OldHWDataLoadPwr[2].s32LastSpotVal[0] 0010F30C 04 AcMeasData.OldHWDataLoadPwr.OldHWDataLoadPwr[2].s32LastSpotVal[1] 0010F30E 04 AcMeasData.OldHWDataGridPwr.OldHWDataGridPwr[0].s32HalfWaveAvgSum 0010F310 04 AcMeasData.OldHWDataGridPwr.OldHWDataGridPwr[0].s32LastSpotVal[0] 0010F312 04 AcMeasData.OldHWDataGridPwr.OldHWDataGridPwr[0].s32LastSpotVal[1] 0010F314 04 AcMeasData.OldHWDataGridPwr.OldHWDataGridPwr[1].s32HalfWaveAvgSum 0010F316 04 AcMeasData.OldHWDataGridPwr.OldHWDataGridPwr[1].s32LastSpotVal[0] 0010F318 04 AcMeasData.OldHWDataGridPwr.OldHWDataGridPwr[1].s32LastSpotVal[1] 0010F31A 04 AcMeasData.OldHWDataGridPwr.OldHWDataGridPwr[2].s32HalfWaveAvgSum 0010F31C 04 AcMeasData.OldHWDataGridPwr.OldHWDataGridPwr[2].s32LastSpotVal[0] 0010F31E 04 AcMeasData.OldHWDataGridPwr.OldHWDataGridPwr[2].s32LastSpotVal[1] 0010F320 04 AcMeasData.CommonCalcData.f32CorTime 0010F322 04 AcMeasData.CommonCalcData.f32GridFreq 0010F324 02 AcMeasData.u16LastAvgSumCnt 0010F340 04 gSystemData.System.dSerNo 0010F342 04 gSystemData.System.dDevType 0010F344 04 gSystemData.System.dDevTypeIdx 0010F346 04 gSystemData.System.wDeviceID 0010F348 02 gSystemData.System.wGridVol_Std 0010F34A 04 gSystemData.System.fNorminalDCLink 0010F34C 02 gSystemData.System.wNorminalPower 0010F34D 02 gSystemData.System.wNorminalGridVolt 0010F34E 02 gSystemData.System.wOverLoadLimit 0010F34F 02 gSystemData.System.wCT_Coefficient 0010F350 02 gSystemData.System.wPeak_Curr_Limit 0010F351 02 gSystemData.System.wModuleNum 0010F352 02 gSystemData.System.DerateReason[0]
Yale Li:
我已经咨询了相关工程师,请关注下方链接:
https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1297564/tms320f28377d-parse-dwarf-debugging-information-in-coff-format-out-files-produced-by-ccs
,
yuan xiang:
在另一个帖子中
TMS320F280039C: 使用EABI格式生成的.out文件该怎么转换成包含全局变量的txt文件呢?之前我们选择的是COFF格式,利用CoffConverter_Ary.exe把.out文件转换成包含全局变量的txt文件。 – C2000︎ 微控制器论坛 – C2000 微控制器 – E2E 设计支持 (ti.com)
提到了CoffConverter_Ary.exe把.out文件转换成包含全局变量的txt文件,该工具您了解吗?请问那里可以下载呢
,
Yale Li:
yuan xiang 说:在另一个帖子中
yuan xiang 说:提到了CoffConverter_Ary.exe把.out文件转换成包含全局变量的txt文件,该工具您了解吗?请问那里可以下载呢
不好意思,我对这个工具也不是很了解。并且在互联网上,除了与该贴有关的内容外,没有任何与该工具有关的信息。我感觉是不是他们公司自己内部的工具?你可以私信问一下他。
我们的工程师提到了两个工具,ofd2000以及abs2000,这些都在CCS的安装路径下。
ofd2000(object file dump)可以转存调试信息和放置信息;abs2000(absolute lister)可以查看结构体和其单个成员的位置。
这几个手册也供参考:
C28x assembly tools manual
常用对象文件格式 (COFF)
The Impact of DWARF on TI Object Files