popo_new 发表于 2016-11-24 17:06:12

求一个二维数组存入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]
查看完整版本: 求一个二维数组存入falsh后的物理地址?