关于STM32中使用FSMC的问题,有些疑问,请大家赐教。

2019-07-21 01:45发布

最近想做一块最小系统版,因为要满足一些文件操作方面的需求,需要扩展SRAM,要用到FSMC,但是学习和调查的过程中,有以下疑问,有知道的大佬烦请解答。1、根据原子哥视频教程中的内容,FSMC的地址线可以乱序排列,不影响使用,但我有些不理解:
假设SRAM的地址范围是0x0000-0xFFFF,地址线16位,那么乱序后,地址值完全可能大于0xFFFF,这时候不就是无效地址了么?
而SRAM芯片不同型号的容量有所出入,最大地址必然有所不同,怎么保证地址的有效性?
我这是哪里的理解有错误,还请指正。
2、视频教程中说地址线D0-D16最好不用乱序,不然高低字节的IO会出现问题,那么我是不是可以理解为D0-D7的线序和D8-D15的线序分别是可乱序的?


烦请诸位不吝赐教。



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
斩柴人
1楼-- · 2019-07-21 02:35
 精彩回答 2  元偷偷看……
玉麒麟
2楼-- · 2019-07-21 06:38
斩柴人 发表于 2019-5-5 22:16
地址线乱接是可以的。比如16根地址线互相交换,总的地址数量还是不变的。这样的结果就是地址互换,这是没关 ...

谢谢启发,我又查看了25616和12816的DataSheet,才发现,容量不同的SRAM芯片地址线宽度不一样。我原本以为IS62WV系列的引脚定义都是相同的。
斩柴人
3楼-- · 2019-07-21 09:08
玉麒麟 发表于 2019-5-6 21:05
谢谢启发,我又查看了25616和12816的DataSheet,才发现,容量不同的SRAM芯片地址线宽度不一样。我原本以 ...

我以前也有这样的疑惑,后来才慢慢明白的
玉麒麟
4楼-- · 2019-07-21 09:15
斩柴人 发表于 2019-5-6 21:27
我以前也有这样的疑惑,后来才慢慢明白的

嗯,其实这样看来,如果要达到最大兼容,那么低位对齐就好了,比如如果要兼容128K的6416、256K的12816、512K的25616和1M的51216的话,那么A0-A15线可以乱序,A16-A18三线不乱序理论上就没有问题了。
我这样理解可对?
chaifuwu
5楼-- · 2019-07-21 11:37
 精彩回答 2  元偷偷看……
chaifuwu
6楼-- · 2019-07-21 14:42
 精彩回答 2  元偷偷看……

一周热门 更多>