搜索
bottom↓
回复: 5

关于LPC2478使用EMC读操作时地址线跳变的问题

[复制链接]

出0入0汤圆

发表于 2010-8-20 05:30:39 | 显示全部楼层 |阅读模式
最近在使用LPC2478的EMC(外部存储器控制器)时出现的一个问题:

当配置EMC后(使能EMC,其它寄存器默认),读取外部RAM

//////////////////////////////////////////////////
unsinged int uiReadValue;
uiReadValue = *(unsinged long *)(0x80000000);
//////////////////////////////////////////////////

根据逻辑分析仪显示,在OEN引脚拉低的过程中(中间位置),地址线进行了一次跳变 由 0x0000 跳变到 0x0004(不论什么地址,都会增加4个字节) , 但读回来的数据是正确的。
在以16位数据(8位数据读时)就没有此现象(地址不跳变),读到的数同样正确。   

//////////////////////////////////////////////////
unsinged int uiReadValue;
uiReadValue = *(unsinged short *)(0x80000000);    // 16bit read
uiReadValue = *(unsinged char  *)(0x80000000);    //  8bit read
//////////////////////////////////////////////////

按照以前的经验,MCU在读取外部存储器时,地址线是不应该有变化的啊。

自己的初步分析:
1  是不是与ARM7的三级流水线有关。
2  是不是与 MAM 有关,但无论怎么设置 MAM ,以上问题依然存在。


小弟半个月来百思不得其解,希望有哪位大虾赐教一二,不胜感激。

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

 楼主| 发表于 2010-8-20 19:29:12 | 显示全部楼层
自己顶一下吧

出0入0汤圆

发表于 2010-8-21 02:27:03 | 显示全部楼层
芯片的EMC的burst模式默认是打开的,所以地址会自动递增。新版的增加了寄存器,可以关闭busrt模式,地址就不会跳变了。

出0入0汤圆

发表于 2010-9-20 10:46:58 | 显示全部楼层
请问一下大哥,LPC2478,,开发方不方便,厂家提供外设的库吗?

出0入0汤圆

 楼主| 发表于 2010-10-13 16:23:31 | 显示全部楼层
库好像没有,开发起来感觉还可以。

2楼正解,这个问题我问过周立功,在最新的LPC2478 DataSheet 中才叙述了这个问题。

谢谢了。

出0入0汤圆

发表于 2011-3-31 14:19:29 | 显示全部楼层
入门LPC2478,感觉看天书,谁有中文的用户手册?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-26 23:53

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表