求一个二维数组存入falsh后的物理地址?
查了好久都没搞定, 求Trend_data存入flash中的地址是多少?谢谢!(用0x00070000+n的方式)
//uint16_t Trend_data;
ptr01 = &Trend_data;
//ucSec1 启始扇区
//ucSec2 结束扇区
//Iadd1启始地址
//Iadd2结束地址
//Inum 复制字节个数,为512/1024/4096/8192
Write_flash_01(28, 28,0x00070000,ptr01,1024);
//ucSec1 启始扇区
//ucSec2 结束扇区
//Iadd1启始地址
//Iadd2结束地址
//Inum 复制字节个数,为512/1024/4096/8192
void Write_flash_01(uint8_t ucSec1, uint8_t ucSec2,uint32_t Iadd1,uint16_t *Iadd2,uint32_t Inum)
{
uint32_t i1,i2;
extern uint16_t tr_span;
i2= tr_span<<16;
for (i1 = 0; i1 < Inum; i1++)
{
if (i1>0)
i2=0;
Me_Msg =Trend_data+i2;
}
IAP_Entry = (void(*)())IAP_ENTER_ADR; // 初始化函数指针IAP_Entry
__disable_irq(); // 在IAP操作前必须关闭所有中断
parIdRead(); // 读器件ID
codeIdBoot(); // 读Boot版本号
Mcu_ID= parIdserial();
sectorPrepare(ucSec1,ucSec2); // 准备扇区29
sectorErase(ucSec1,ucSec2); // 擦除扇区29
blankChk(ucSec1,ucSec2) ; // 查空扇区29
//
sectorPrepare(ucSec1,ucSec2); // 选择扇区29
flash_code=ramCopy(Iadd1 , (uint32_t)Me_Msg, 4*Inum); // 写数据到扇区1 复制字节个数,为512/1024/4096/8192
__enable_irq();
}
页:
[1]