首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]关于MC9S12DP256外扩RAM的硬件连接问题

[求助]关于MC9S12DP256外扩RAM的硬件连接问题

版主,我现在用MC9S12DP256,想外扩一片64K×16bit的RAM,看了帮助手册上面的例子,对硬件连接还有疑惑,前面有关的帖子说应该在窗口0x8000-0xBFFF扩展,这样才能避免和已有的flash页面重合。
困惑1.看了AN2408文档上面的例子,发现第一个例子是将一个8K×8bit的RAM映射到0x4000-0x5FFF,而第二个例子是将两个8K×8bit的RAM映射到0x4000-0x7FFF。
这两个例子都是只用ADDR0-15作为地址线的硬件连接方法,这样的话是不是没有办法把地址映射到窗口0x8000-0xBFFF中,而且这样必定会与直接寻址的64K地址重合?
2.从第三个例子开始是讲述RAM映射到0x8000-0xBFFF,这次是一个128K×8bit的RAM,并且采用了XADDR中的若干根线参与了地址的选择。那么想问是不是如果采用0x8000-0xBFFF地址使用外扩RAM的话,必须要把XADDR作为地址选择的高位线使用?
3.还是与外扩的RAM大小有关系,大小超过了16K×8bit,就必须采用XADDR作为高位地址线,将RAM分成16K为一页的单位呢??
我认为我要用的RAM芯片应该参照例子三进行设计,请版主和各位大侠判定一下行不行啊??
飞思卡尔带我走进神奇的单片机世界
第一个问题:
虽然0x4000~0x7FFF是DP256的内部地址,但是可以通过MISC寄存器的ROMHM位进行控制,将其关闭,这样就变成外部空间。这适用于内部FLASH空间足够使用的应用中。
海纳百川  有容乃大
谢谢强陈的回答,可是如果我需要保留0x4000~0x7FFF的地址存放程序代码,而又想扩64K的RAM,是不是应该利用XADDR的连接方式呢??
飞思卡尔带我走进神奇的单片机世界
第二个问题:
如果你需要使用DP256的全部内部FLASH地址,那么外部扩展地址就只能选择在0x8000~0xBFFF的窗口地址区。窗口地址的寻找采用的是分页机制,每页的大小为16K。如果扩展空间大小超过了16K,就应该用XADDR地址线来寻址。
海纳百川  有容乃大
第三个问题与第二个问题是一样的。但是要注意,8BIT的RAM与16BIT的RAM在地址线ADDR0的接法上是不一样的,因为S12的内部地址是以8BIT为一个地址单元的。
海纳百川  有容乃大
这下彻底明白了,非常感谢强陈的耐心细致的解答!!
飞思卡尔带我走进神奇的单片机世界
返回列表