问个弱问题:数据宽度改变时的地址偏移

[复制链接]
2903|3
 楼主| lanmanck 发表于 2007-3-5 11:51 | 显示全部楼层 |阅读模式
用了6713<br />&nbsp;&nbsp;这是32宽数据口<br />地址线有A2-A22<br />配置为8位数据口时,A2=“A0”<br />16位,A2=“A1”<br />32位,A2=“A2”<br />看文档所偏移的地址出现在be[0、1]上了,这是给sdram用的阿。<br />想问的是:<br />&nbsp;&nbsp;我用16、32位方式访问设备,A0怎么办?<br />用arm&nbsp;cpu时也有这样的问题,例如接16位外设时,a0不用,直接把a1接到芯片的“a0”上了。<br /><br />哪位大侠能给详细讲讲?
iversonma 发表于 2007-3-5 16:35 | 显示全部楼层

re

前面的看懂了,后面的问题没有看明白要问什么~<br /><br />如果已经定义了是32位的,那么a0a1a2当然不用关了,我一直这么理解
 楼主| lanmanck 发表于 2007-3-5 17:29 | 显示全部楼层

就是问

比如用32位方式访问设备,A0、A1不是不要吗,那就扔掉了?<br />然后A2接到外设,比如flash的“A0”上。<br />那访问的时候,比如写一个数:*(int*)0x01=0x00;那么0x01出现在哪里呢?是dsp的A2=1,A3...=0?这样吗?但我用6000的时候好像不是这样。<br />&nbsp;&nbsp;16、32位访问时,硬件会自动移位,每次我都要在软件重新移位一下,比如上面的,我会改成:*(int*)(0x01&lt&lt2)=0x00,让A2=1,A3=0。。。,请问这样有没有必要?<br />
 楼主| lanmanck 发表于 2007-3-6 09:22 | 显示全部楼层

理解了,嘿嘿

  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

154

主题

400

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部