0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32接口中FSMC/FMC难点问题理解

电子设计 来源:网络整理 作者:工程师1 2018-04-19 12:36 次阅读

一,FSMC简

FSMC,即灵活的静态存储控制器,能够与同步或异步存储器和 16 位 PC 存储器卡连接,

STM32 的 FSMC 接口支持包括 SRAM、NAND FLASH、NOR FLASH 和 PSRAM 等存储器。

二,FSMC存储块

STM32F767的FMC将外部存储器划分为6个固定大小的256M的存储区域,如下图

如图:
FSMC分为4块,每块256M字节又被划分为4*64,即四个片选
NOR / PSRAM使用块1,共256M
NAND闪存使用块2,3,共512M
PC卡使用块4,共256M

三,存储块1(Bank1)寄存器

STM32 的 FSMC 存储块 1(Bank1)被分为 4 个区,每个区管理 64M 字节空间,每个区都
有独立的寄存器对所连接的存储器进行配置。Bank1 的 256M 字节空间由 28 根地址线
(HADDR[27:0])寻址。
这里 HADDR 是内部 AHB 地址总线,其中HADDR[25:0]来自外部存储器地址
FSMC_A[25:0],而 HADDR[26:27]对 4 个区进行寻址。

我们要特别注意 HADDR[25:0]的对应关系:
当 Bank1 接的是 16 位宽度存储器的时候:HADDR[25:1]对应 FSMC-A[24:0]。
当 Bank1 接的是 8 位宽度存储器的时候:HADDR[25:0]对应FSMC_A[25:0]。

比如外部存储器接到FMC_NE1上面,那么外部存储器的地址为HADDR[26:27] +FMC_A[25:0]=0x60000000+FMC_A[25:0]。

注:不论外部接 8 位/16 位宽设备,FSMC_A[0] 永远接在外部设备地址 A[0] 。

HADDR[25:0] 位包含外部存储器地址,由于 HADDR 为字节地址,而存储器按字寻址,所以根据存储器数据宽度不同,

实际向存储器发送的地址也将有所不同,如图:

一个地址对应一个字节的数据,所以64M字节的地址量,就可以表示64x8=512M的数据,也就是说外部储存器的最大容量为512M.

当 Bank1 接的是 16 位宽度存储器的时候:HADDR[25:1]对应 FSMC-A[24:0]。

:一个地址就可以操作一个字(16位)的数据那么就不需要26根地址线了,HADDR[0]就没有用到,所以: HADDR[25:1] = FMC _A[24:0] 。

即:
0000对应FSMC_A[0]=0 (2字节)
0010对应FSMC_A[0]=1 (2字节)
0100对应FSMC_A[1]=1 (2字节)


所以对应关系需要除以2,内部右移一位对齐
此时最低位没用,访问最低位需要使用UB/LB


当 Bank1 接的是 8 位宽度存储器的时候:HADDR[25:0]对应 FSMC_A[25:0]。

:一个地址正好可以操作一个字节(8位)的数据,需要26根地址线:那么 HADDR[25:0] = FMC _A [25:0]。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储器
    +关注

    关注

    38

    文章

    7447

    浏览量

    163579
  • STM32
    +关注

    关注

    2265

    文章

    10870

    浏览量

    354685
  • FSMC
    +关注

    关注

    0

    文章

    55

    浏览量

    38104
收藏 人收藏

    评论

    相关推荐

    浅析STM32 FSMC操作LCD的过程

    FSMC称为灵活的静态存储器,它能够与同步或异步存储器和16位PC存储器卡连接,STM32F4的FSMC接口支持包括SRAM、NAND FLASH、NOR FLASH和PSRAM等存储
    发表于 07-22 14:46 3799次阅读
    浅析<b class='flag-5'>STM32</b> <b class='flag-5'>FSMC</b>操作LCD的过程

    FSMC_Bank1和FSMC_Bank1E没有定义是怎么回事?

    ​如标题所述, FSMC_Bank1和FSMC_Bank1E 没用定义,但是在stm3f4xx.h中明明有: ​ ​#if defined (STM32F427_437xx) || defined
    发表于 05-15 08:00

    stm32的sdio接口中的"数据通道"和"命令通道",通道两个字该怎么理解

    stm32的sdio接口中的"数据通道"和"命令通道",通道两个字该怎么理解如题,应该作为硬件上的东西理解吗?
    发表于 11-06 18:43

    STM32FSMCFMC有什么区别?

    STM32FSMCFMC有什么区别呢? 有的系列,比如F103是FSMC,有的系列,M4就是FMC了。这两者有什么区别呢?
    发表于 09-26 06:17

    TFT_LCD与FSMC的硬件连接大容量STM32F10xxx_FSMC接口

    使用大容量STM32F10xxx的FSMC模块连接TFT LCD
    发表于 01-08 14:16 39次下载

    如何使用STM32FSMC接口驱动LCD屏

    本实验向大家介绍如何使用STM32FSMC接口驱动LCD屏,及使用触摸屏控制器检测触点坐标。
    发表于 09-22 12:04 0次下载

    基于FPGA和STM32FSMC通信

    FSMC简介:FSMC即灵活的静态存储控制器,FSMC管理1GB空间,拥有4个Bank连接外部存储器,每个Bank有独立的片选信号和独立的时序配置;支持的存储器类型有SRAM、PSRAM、NOR/ONENAND、ROM、LCD
    发表于 07-28 09:35 1.2w次阅读

    STM32单片机的FSMC对TFT的驱动

    开始只是谈到别人对FSMC理解,注意这里只讨论FSMC控制TFT,也就是在FSMC的NOR\PSRAM模式控制LCD,所以我们以下的分析都是基于这种模式的。
    发表于 12-12 14:22 4101次阅读
    <b class='flag-5'>STM32</b>单片机的<b class='flag-5'>FSMC</b>对TFT的驱动

    STM32学习教程之FSMC模块

    STM32学习教程之FSMC模块
    发表于 03-16 15:47 52次下载
    <b class='flag-5'>STM32</b>学习教程之<b class='flag-5'>FSMC</b>模块

    STM32 FSMC驱动TFTLCD 难点解析资料下载

    电子发烧友网为你提供STM32 FSMC驱动TFTLCD 难点解析资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指南、解决方案等资料,希望可以帮助到广大的电子工程师们。
    发表于 04-10 08:40 29次下载
    <b class='flag-5'>STM32</b> <b class='flag-5'>FSMC</b>驱动TFTLCD <b class='flag-5'>难点</b>解析资料下载

    stm32_FSMC机制

    stm32_FSMC机制,介绍FSMC机制入门
    发表于 02-21 15:16 18次下载

    为什么可以利用FSMC来使用外部RAM

    为什么可以利用FSMC来使用外部RAM呢,首先了解一下STM32里的FSMC。大容量且引脚数在100脚以上的STM32F103芯片都带有FSMC
    发表于 04-28 16:22 1908次阅读

    AN5507_STM32H7 系列闪存接口中的循环冗余校验

    AN5507_STM32H7 系列闪存接口中的循环冗余校验
    发表于 11-21 08:11 0次下载
    AN5507_<b class='flag-5'>STM32</b>H7 系列闪存<b class='flag-5'>接口中</b>的循环冗余校验

    AN3241 如何应用STM32F10XX的FSMC接口驱动QVGA_TFT-LCD屏幕

    AN3241 如何应用STM32F10XX的FSMC接口驱动QVGA_TFT-LCD屏幕
    发表于 11-24 08:31 2次下载
    AN3241 如何应用<b class='flag-5'>STM32</b>F10XX的<b class='flag-5'>FSMC</b><b class='flag-5'>接口</b>驱动QVGA_TFT-LCD屏幕

    TFT LCD与FSMC的硬件连接大容量STM32F10xxx FSMC接口

    电子发烧友网站提供《TFT LCD与FSMC的硬件连接大容量STM32F10xxx FSMC接口.pdf》资料免费下载
    发表于 09-21 11:42 5次下载
    TFT LCD与<b class='flag-5'>FSMC</b>的硬件连接大容量<b class='flag-5'>STM32</b>F10xxx <b class='flag-5'>FSMC</b><b class='flag-5'>接口</b>