最近正在用LPC2210点亮TFT屏,在SMART2200已经调试通过,于是自己画了一款板子,考虑到PSRAM的封装不好焊接,就找了一款SRAM替代,型号是IS61WV102416BLL的1Mx16bit的,调试过程中TFT显示了(BANK0 RAM,BANK1 FLASH JTAG调试),图片也正确,我放了5副图片循环显示,但是有时会停止,有时显示几幅图片就停止,有时显示几个循环才刚停止,我查看停止的位置,有两个位置:<br />;取指令中止<br />PrefetchAbort<br /> B PrefetchAbort<br /><br />;取数据中止<br />DataAbort<br /> B DataAbort<br /><br />我于是猜想是否是存储器BCFG0的设置有问题,于是对下面的数据进行了设置,但是问题依然如故,请问这是什么原因呢?<br />*********************************************************************<br />#define Fosc 12000000 //Crystal frequence,10MHz~25MHz,should be the same as actual status. <br /> //应当与实际一至晶振频率,10MHz~25MHz,应当与实际一至<br />#define Fcclk (Fosc * 4) //System frequence,should be (1~32)multiples of Fosc,and should be equal or less than 60MHz. <br /> //系统频率,必须为Fosc的整数倍(1~32),且<=60MHZ<br />#define Fcco (Fcclk * 4) //CCO frequence,should be 2、4、8、16 multiples of Fcclk, ranged from 156MHz to 320MHz. <br /> //CCO频率,必须为Fcclk的2、4、8、16倍,范围为156MHz~320MHz<br />#define Fpclk (Fcclk / 4) * 1 //VPB clock frequence , must be 1、2、4 multiples of (Fcclk / 4).<br /> //VPB时钟频率,只能为(Fcclk / 4)的1、2、4倍<br />*********************************************************************<br />BCFG_16DEF EQU 0x10000400 ;// 16Bit Bus<br />;// | IDCY | WST1 | WST2 <br />;// | Idle width | Read width | Write width<br />;// | 0x00 ~ 0x0f| 0x00 ~ 0x1f| 0x00~0x1f<br />BCFG_PSRAM EQU (BCFG_16DEF | (0x00<<0) | (0x03<<5) | (0x0a<<11)) ;// For 70ns PSRAM<br /><br />BCFG_FLASH EQU (BCFG_16DEF | (0x00<<0) | (0x03<<5) | (0x02<<11)) ;// For 90ns Flash<br />BCFG_CS2 EQU (BCFG_16DEF | (0x0f<<0) | (0x1f<<5) | (0x1f<<11)) ;// Blank <br />BCFG_CS3 EQU (BCFG_16DEF | (0x01<<0) | (0x03<<5) | (0x03<<11)) ;// For Peripheral Equipment<br />*********************************************************************<br /><br /> |
|