请问LPC1788外接SDRAM,连线要使用蛇形线吗?
我将一片LPC1788焊到一块LPC2478的板上,结果SDRAM写入时经常出错,但是使用LPC2478的时候,怎样操作都没有问题,请问是不是因为SDRAM的连线没有等长的原因呢? 将LPC1788的操作时钟设置为72M还是有问题. SDRAM不需要等长吧。我也是1788焊在2478的板子上,用着正常。SDRAM型号变了没?驱动代码相同么?看看SDRAM的模式设置寄存器有没有配置对。 SDRAM还是那个SDRAM,EMC的寄存器大多是一样,多了个EMCDLYCTL的寄存器,我写了个0x00000808的值.
LPC_SC->PCONP |= 0x00000800;
LPC_SC->EMCDLYCTL = 0x00000808;
LPC_EMC->Control = 0x00000001;
LPC_EMC->Config = 0x00000000;
LPC_EMC->DynamicConfig0 = 0x680;
LPC_EMC->DynamicReadConfig = 0x00000001; /* Command delayed strategy, using EMCCLKDELAY */
LPC_EMC->DynamicRasCas0 = 0x303; // RAS=3 CCLKs,CAS=3 CCLKs
LPC_EMC->DynamicRP = 1;
LPC_EMC->DynamicRAS = 3;
LPC_EMC->DynamicSREX = 7;
LPC_EMC->DynamicAPR = 2;
LPC_EMC->DynamicDAL = 5;
LPC_EMC->DynamicWR = 1;
LPC_EMC->DynamicRC = 5;
LPC_EMC->DynamicRFC = 5;
LPC_EMC->DynamicXSR = 7;
LPC_EMC->DynamicRRD = 1;
LPC_EMC->DynamicMRD = 2;
delayMs(0, 200); /* wait 100ms */
LPC_EMC->DynamicControl = 0x00000183; /* Issue NOP command */
delayMs(0, 400); /* wait 200ms */
LPC_EMC->DynamicControl = 0x00000103; /* Issue PALL command */
LPC_EMC->DynamicRefresh = 0x00000002; /* ( n * 16 ) -> 32 clock cycles */
for(i = 0; i < 0x40; i++); /* wait 128 AHB clock cycles */
LPC_EMC->DynamicRefresh = 28;
LPC_EMC->DynamicControl = 0x00000083; /* Issue MODE command */
dwtemp = *((volatile unsigned int *)(SDRAM_BASE | (0x32<<(13))));
LPC_EMC->DynamicControl = 0x00000000; /* Issue NORMAL command */
LPC_EMC->DynamicConfig0 = 0x80680; SD只要線長差得不太離譜。沒多大問題。我們原來部門一哥們。PCB文件由AD格式轉成PADS格式。不知他在怎麼搞。搞來搞去。最後把SDRAM部分的線全搞亂了。打樣回來不工作,最後一根根的用漆包線接。接好後照樣跑。三片DEMO啊。那兄弟接了好幾天。人都是逼出來的。這話一點不假啊 最短那条是998mil,最长那条是2610mil,要蛇一下吗? 这样蛇行吗?
http://cache.amobbs.com/bbs_upload782111/files_48/ourdev_701015L3X6LH.JPG
(原文件名:捕获.JPG) 回复【6楼】huatong
-----------------------------------------------------------------------
你这蛇形还不如不加,same net保持3W原则,不然加速效应明显,串扰大! 高频的,需要,一般情况没问题吧 回复【7楼】rx_78gp02a
回复【6楼】huatong
-----------------------------------------------------------------------
你这蛇形还不如不加,same net保持3w原则,不然加速效应明显,串扰大!
-----------------------------------------------------------------------
顶,看来huatong 还没明白是啥意思 蛇形线是为了同层同组的信号线等长,如果不控制长度,加了还不如不加呢 楼主用的2层板?我用的4层板,还好没啥问题。 huxiaoping 发表于 2012-2-5 00:13
回复【7楼】rx_78gp02a
回复【6楼】huatong
------------------------------------------------------- ...
3W 原则乱起来就是线距(边)是线宽的两倍吗 频率又不高,没啥必要吧。
页:
[1]