打印

读FLASH中的值,为什么总有一些值 不对?

[复制链接]
1723|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yanghuyue|  楼主 | 2007-6-18 14:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void CUpProgram::LoadMcuToFlash(INT8U type)
{
  INT32U runproadd=0x00007ff8;

  INT8U tempbuf[256+5];
  INT32U paadd32;
  INT32U temp32;
       paadd32=0;
  
      
  
        
   for(INT32U i=0;i<240*1024;i+=256)//读240K,从0x8000开始的MCU中FLASH中的值 ,程序此时也在这个区运行
    {
      for(INT32U m=0;m<256;m+=4)
      {
       runproadd+=4;
       temp32=(*((INT32U *) (runproadd)));//volatile 
       tempbuf[m]=temp32;
       tempbuf[m+1]=temp32>>8;
       tempbuf[m+2]=temp32>>16;
       tempbuf[m+3]=temp32>>24;
  //为什么么0x8010,8030的值都不对呀?只要是runproadd=0xXXXC.只
//要最后4位是C,理应读0xXXXC+4地址的值 。实际上值总是不对?我读的有
//问题吗?
       /////////////////////////  
      }
     
      
    }
 }

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

23

帖子

0

粉丝