打印

2812FLASH运行速度慢问题

[复制链接]
1746|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jxmzzr|  楼主 | 2014-5-7 10:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
flash, AI, AN, ST, TI
2812硬件仿真速度较快,但下载到FLASH中运行速度下降10倍左右,可能初始设置有问题,请高手帮忙.

void InitFlash(void)
{
  EALLOW;
  //Enable Flash Pipeline mode to improve performance
  //of code executed from Flash.
  FlashRegs.FOPT.bit.ENPIPE = 1;

   //Set the Random Waitstate for the Flash
  FlashRegs.FBANKWAIT.bit.RANDWAIT = 5;
  
  //Set the Paged Waitstate for the Flash
  FlashRegs.FBANKWAIT.bit.PAGEWAIT = 5;
  
   //Set number of cycles to transition from sleep to standby
  FlashRegs.FSTDBYWAIT.bit.STDBYWAIT = 0x01FF;   
  
  //Set number of cycles to transition from standby to active
  FlashRegs.FACTIVEWAIT.bit.ACTIVEWAIT = 0x01FF;  
  EDIS;

.

  asm(" RPT #7 || NOP";
}   

void InitPll(Uint16 val)
{
  volatile Uint16 iVol;  
   
   EALLOW;
   SysCtrlRegs.PLLCR.bit.DIV = 6;
   /////////////////////////////add
   XintfRegs.XINTCNF2.bit.CLKOFF=1 ;//off clkout
    XintfRegs.XINTCNF2.bit.WRBUFF=3 ;//
    XintfRegs.XINTCNF2.bit.CLKMODE=0;//
     XintfRegs.XINTCNF2.bit.XTIMCLK=0;//=sysclk
   ///////////////////////////////////////////
    SysCtrlRegs.HISPCP.all = 0x0007; //low clk
    SysCtrlRegs.LOSPCP.all = 0x0007; //low clk
   EDIS;
  
   
   
     for(iVol= 0; iVol< ( (131072/2)/12 ); iVol++)
   {
  
   }
  }
   
}



相关帖子

沙发
wangdezhi| | 2014-5-7 17:17 | 只看该作者
仿真在ram里面吧

使用特权

评论回复
板凳
wangdezhi| | 2014-5-7 17:17 | 只看该作者
仿真不在flash吧

使用特权

评论回复
地板
zhangmangui| | 2014-5-7 22:32 | 只看该作者
这个问题大家讨论了很多次了   flash的速度肯定是无法和RAM比的   
flash的效率一般只有RAM的70-80%左右  
你可以采用Flash搬移到Ram中运行

使用特权

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

本版积分规则

460

主题

2188

帖子

12

粉丝