嵌入式爱好者

查看: 5638|回复: 5

[使用2440外扩控制芯片硬件连接疑问]

[复制链接]

4

主题

11

帖子

12

积分

扫一扫,手机访问本帖
发表于 2011-6-10 22:03:01 | 显示全部楼层 |阅读模式
使用2440的总线外扩一个控制芯片,这个控制芯片内部有连续地址的寄存器(地址如:0x0,0x1,0x2,....),12bit的地址线,16bit的数据线,我的硬件连接方式如下:
(1)把芯片的CS连到nGCS1,地址空间映射到0x08000000;
(2)2440的A1连到芯片的A0;

那么我对芯片的寄存器访问是否为
(*(volatile unsigned *)(0x08000000 + 0x0)) --> 寄存器 0
(*(volatile unsigned *)(0x08000000 + 0x1)) --> 寄存器 1
(*(volatile unsigned *)(0x08000000 + 0x2)) --> 寄存器 2

还是说
(*(volatile unsigned *)(0x08000002 + 0x0)) --> 寄存器 0
(*(volatile unsigned *)(0x08000002 + 0x1)) --> 寄存器 1
(*(volatile unsigned *)(0x08000002 + 0x2)) --> 寄存器 2

还是说
(*(volatile unsigned *)(0x08000000+(0x1<<1)))


请大家指点指点
回复

使用道具 举报

4

主题

11

帖子

12

积分

 楼主| 发表于 2011-6-11 09:28:08 | 显示全部楼层
有没有人来帮帮忙呀
回复 支持 反对

使用道具 举报

0

主题

7131

帖子

0

积分

发表于 2011-6-11 11:21:17 | 显示全部楼层
这要看你的寄存器是几位的啊
回复 支持 反对

使用道具 举报

4

主题

11

帖子

12

积分

 楼主| 发表于 2011-6-11 22:44:05 | 显示全部楼层
这跟寄存器几位有关系吗?
主要是跟地址和数据总线位数有关吧,地址12bit,数据16bit,寄存器也是12bit且连续的,从0x1,0x2,0x3,.....
回复 支持 反对

使用道具 举报

0

主题

7131

帖子

0

积分

发表于 2011-6-13 09:02:39 | 显示全部楼层
8000 0000 为第一个12位寄存器
8000 0001 为第二个12位寄存器

中间多出4为数据线,应该没用~
回复 支持 反对

使用道具 举报

songwu456 该用户已被删除
发表于 2011-8-25 09:11:08 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-10-5 10:25

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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