TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320F280049: 特定flash区域CRC值每次编译都不一致

Part Number:TMS320F280049

hi,dear:

我需要对特定区域作为安全区(0x98000—–0x99000),对此区域flash做CRC校验(即和goldenCRC比较,一致则ok)

但是每次测试,对非安全区程序略有改动,安全区域CRC 会变化。

如下所示:在安全区只有calculateECC(),执行xorData = xorData ^ temp1;。打开反汇编可以看到,当执行 00C955BB    FFC          XAR7, LL$$XOR时候, 00C955BB会变化。

打开map文件,

0 0009542e C$$EXIT0 00094d6d FS$$DIV0 00095514 I$$DIV0 00095525 I$$MOD0 00095404 L$$DIV0 00095413 L$$MOD0 000955ab LL$$AND0 00095554 LL$$CMP0 000955b3 LL$$OR0 000955bb LL$$XOR0 00095601 U$$DIV0 00095606 U$$MOD0 00095421 UL$$DIV0 00095428 UL$$MOD0 00095566 ULL$$CMP 

每次编译会发生变化。该如何固定LL$$XOR这些在flash中的位置呢?

谢谢!

#pragma CODE_SECTION(calculateECC,"FlashFusa2" );
void calculateECC(void);

#pragma DATA_SECTION(temp1,"ramgs1");
#pragma DATA_SECTION(xorData,"ramgs1");
uint64_t xorData,temp1;

void calculateECC(void)

{xorData = xorData ^ temp1;}

Green Deng:

抱歉对CRC校验的问题不太熟悉,还请麻烦你移步至英文E2E论坛提问:e2e.ti.com/…/c2000-microcontrollers-forum

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F280049: 特定flash区域CRC值每次编译都不一致
分享到: 更多 (0)