打印

要在FSMC上同时挂接一片8位的SRAM和一个16位的接口芯片,咋办

[复制链接]
3573|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
他爹|  楼主 | 2009-5-26 20:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
要在100脚的 STM32F103VDT6 的FSMC上同时外扩一片8位数据宽度的SRAM和一片16位数据宽度的接口芯片,该如何实现呢?
沙发
Again_gyf| | 2009-5-26 21:37 | 只看该作者

使用8位总线宽度

对与那16位的利用最低位地址线来分两次来读写

使用特权

评论回复
板凳
mcu_inside| | 2009-5-26 22:41 | 只看该作者

可数据线怎么连呢?

一边是8位,另一边是16位。

使用特权

评论回复
地板
香水城| | 2009-5-27 01:19 | 只看该作者

在FSMC上同时挂接一片8位的SRAM和一个16位的接口芯片的问题

要在100脚的 STM32F103VDT6 的FSMC上同时外扩一片8位数据宽度的SRAM和一片16位数据宽度的接口芯片,该如何实现呢?

首先,100脚的STM32F103VDT6上地址低16位和16位数据线是复用的,你需要使用一个地址锁存器把数据与地址分开。

其次,FSMC的控制寄存器中有一个控制位用于指定"存储器数据总线宽度",不同的片选信号可以指定不同的数据总线宽度,因此不管是8位还是16位的接口,所有的地址线都不需要做移位处理,即STM32的ADDR0直接接外设的ADDR0,STM32的ADDR1直接接外设的ADDR1......等等。

数据线也是直接连接即可,STM32的D0~D7同时接2个设备的D0~D7,STM32的D8~D15接16位设备的D8~D15。

使用片选信号NE1~4中的任意2个,分别连接这2个设备,用于区分对不同设备的访问。

使用特权

评论回复
5
王紫豪| | 2009-5-27 01:54 | 只看该作者

香板真敬业啊,但半夜的。不知道嫂子同意不,哈哈

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

12

帖子

0

粉丝