Part Number: TMS320F28377S
开发汽车UDS刷写,基于安全考虑,需将FLASH API部分独立为dirver文件,后续由can下发后使用,通过指定单独flash和ram区域整个功能已经实现。
目前问题:整个工程可能因为更改其他功能导致生成的driver文件有细微变更,查看map文件Flash28_API占用内存的大小没有变化,仅此部分对应flash内容就是有区别,导致不同版本boot文件对应dirver文件不一致,不利于项目管理。
项目用了28335和28377两种芯片,都有出现类似现象,下面已28377工程举例说明。
最后分析的表象原因可能是优化等级会影响,ram运行大小变化会影响,但是api部分代码不是固定的吗,怎样才能做到工程变更不影响driver文件生成。
下图为前后map文件Flash28_API对比:

下图是前后dirver.mot16文件对比:
dirver文件区别涉及以下三部分:
Read.obj (.text:_Fapi_loopRegionForValue)
0x99B5(39349) 0x9117(37143)

: FlashStateMachine.obj (.text:_Fapi_setupSectorsForWrite)
0x9961(39265) 0x9119(37145)
0x9998(39320) 0x9190(37264)

: Utilities.obj (.text:_Fapi_scaleCycleValues)
0x99B5(39349) 0x9117(37143)






