历史上的今天
今天是:2025年03月23日(星期日)
2020年03月23日 | FSMC-灵活的静态存储控制器
2020-03-23 来源:eefocus
最近在学习SMT32的FSMC模块,现将我自己对FSMC的理解讲解一下,并对学习过程中遇到的疑点和难点进行分享。
0.前言
学习FSMC,我推荐《STM32F4xx中文参考手册》、《STM32F4开发指南-库函数版本_V1.1.pdf》和一些SRAM的技术文档,比如《IS62WV51216.pdf》。如果有STM32开发板那就更好了,如果没有开发板,只是想了解FSMC的工作原理及过程,可以参考STM32F407的程序代码,这些资料可以去正点原子官方网站免费下载:http://www.openedv.com/thread-13912-1-1.html。
本文主要是按照《STM32F4xx中文参考手册》FSMC部分讲解。对我在学习过程中的疑点难点进行补充。
1.FSMC概述
FSMC英文全称为Flexible Static Memory Controller,翻译成中文为:灵活的静态存储控制器。它是STM32的一个外设。
功能:扩展外部SRAM、NOR FLASH、NAND FLASH、ROM、PC卡等。
2.FSMC框图
FSMC 包含四个主要模块:
● AHB 接口(包括 FSMC 配置寄存器)
● NOR Flash/PSRAM 控制器
● NAND Flash/PC 卡控制器
● 外部器件接口

也就是说,STM32的FSMC模块可以用来外接静态随机访问存储器 (SRAM)、 只读存储器 (ROM)、 NOR Flash/OneNAND Flash、 PSRAM( 4 个存储区域)。至于如何连接呢?下图是正点原子的开发板STM32F407ZET6连接SRAM的原理图,

图中红色字体对应STM32芯片上的对应引脚,可以看到STM32芯片和SRAM都有相同的一些引脚,包括18根地址总线、16根数据总线、UB、LB、OE、WE、CE。
3.FSMC工作模式
FSMC分为同步模式和异步模式,其中异步模式又分为模式1、模式A、模式2/B、模式C、模式D、复用模式。不同模式的区别在于NBL0,NBL1,NOE,NWE,NEx几根控制信号线的时序不同,具体请参考《STM32F4xx中文参考手册》。
简单来说,对于SRAM芯片的控制就是配置STM32的寄存器,将复杂的时序封装起来,我们用户不用管,选择好模式后,STM32芯片自动按照模式对应的时序进行访问SRAM。
与此同时,被访问的SRAM也要遵循FSMC的工作方式,这样才能识别出是那种方式,才能够响应STM32控制芯片。至于被控制的SRAM采用何种工作模式以及其自身的命令,可参考具体的SRAM资料手册。
4.总结
此文并非详解,这是我个人学习后的一些想法。关于FSMC的细节部分一定要看《STM32F4xx中文参考手册》,这是最权威的资料,也非常详细。一定耐下心多看几遍,最好对照程序源码,会达到事半功倍的效果。
上一篇:STM32-FSMC-SRAM
下一篇:STM32 FSMC 详解
史海拾趣
|
光纤通信技术的应用越来越广,制造光纤的原料的品种越来越多,光纤制作的工艺技术也有突破性的发展。光纤的新品种和新结构不断出现,产品质量也不断的提高。一条完整的光纤链路的性能不仅取决于光纤本身的质量,还取决于连接头的质量以及施工工艺和 ...… 查看全部问答> |
|
随着生物识别种类的不断增加,以语音为基础的身份验证方式似乎比其他方式更容易让人接受,因为语音识别具有非接触、非侵入性和易于使用的特点,所以语音识别特别受大众消费者的喜欢。 根据Unisys公司调查显示,消费者喜欢的生物安 ...… 查看全部问答> |
|
freescale 的入门级powerpc QII通信处理器白皮书 飞思卡尔最近推出了几款入门级的powerpc通信处理器,成本极低(10-15美金),是e300的核心,最高400mhz的主频,这样就相当于800MIPS的性能,这个性能是极高的,拿ARM比,据称是400MHZ s3c2440这类arm9的4倍性能,此外,它集成了另一个核QUICC,200M ...… 查看全部问答> |
|
VxWorks启动不成功,下面是启动的几个画面,显示 muxload failed。似乎是网络问题,但是我能在Dos下 ping通,但是就启动不成功,一直无法解决。亟待解决,多谢。。… 查看全部问答> |




