你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32接口FSMC/FMC难点详解

[复制链接]
eefishing 发布时间:2017-6-6 15:39
11.png
: P% X5 B2 t  l6 u
, @4 A/ Z7 W3 G+ ^0 w/ s, o. l
       STM32F767的FMC将外部存储器划分为6个固定大小的256M的存储区域,如下图
12.png

3 q; l8 R. d# C% s+ f! T
5 X  t3 b( [9 }% Y
       STM32F767的FMC 存储块 1(Bank1 )被分为4个区,每个区管理64M 字节空间,每个 区都有独立的寄存器对所连接储进行配置。Bank1 的 256M字节空间由  28 根地址线 根地址线(HADDR[27:0])寻址。 这里HADDR[27:0]是内部AHB地址总线,其中地址总线HADDR[25:0]来自外部存储器地址FMC_A[25:0](FMC_A[25:0]会接到外部存储器的地址线上,也就是HADDR内部总线的[25:0]来自外部存储器地址线),而 HADDR[26:27] 对4个区进行寻址。如表 18.1.2.1所示:
13.png
" E: T6 i( j8 S( x

% w6 z' [, P, g3 T# V
      比如外部存储器接到FMC_NE1上面,那么外部存储器的地址为HADDR[26:27]+FMC_A[25:0]=0x60000000+FMC_A[25:0]。, t1 z* L0 S2 B) U2 c
​       HADDR[25:0] 位包含外部存储器地址,由于 HADDR为字节地址,而存储器按字寻址,所以根据存储器数据宽度不同,实际向存储器发送的地址也将有所不同,如下表所示。
14.png

& ]1 S: }* ^/ o. Q  }$ i
. c! K. U4 T! l* M2 \
​      因为一个地址对应1个字节数据,所以64M字节的地址量,就能表示64x8=512Mb的数据,也就是外部存储器最大容量为512Mb。

9 s5 C6 O9 ~! ^% G3 @. u* D! {7 T1 _/ m
      当接的是8位宽度存储器的时候,也就是一个地址正好可以操作一个字节(8位)的数据,需要26根地址线:那么 HADDR[25:0] =FMC _A [25:0] ,就可以了。
; S9 U6 u$ ]- K2 q5 Y& `& ?0 O
      当接的是16位宽度存储器的时候,那么一个地址就可以操作一个字(16位)的数据那么就不需要26根地址线了,HADDR[0]就没有用到,所以:HADDR[25:1] = FMC _A[24:0] 。

: v1 z: @# \! s
     ​ 例如TFTLCD屏(16位宽存储器)的RS脚接到FMC_A18上面,使用FMC_NE1(就是使用BANK1的子bank1),
4 c) X- Q$ `$ e# l
       外部存储器地址线寻址到A18为0时也即是FMC_A[24:0]=0x3FFFF,左移一位付给内部总线HADDR[25:1]=000000 0111 1111 1111 11111110=0x7fffe,所以内部总线读写外部存储器命令(REG)的地址(寻址)就变为0x60000000+0X7FFFE(FMC_A18即RS为0时);

7 }6 H3 b" y; ^
​       部存储器地址线寻址到A18为1时也即是FMC_A[24:0]=0x40000,左移一位付给内部总线HADDR[25:1]=000000 1000 0000 0000 0000 0000=0x8000,内部总线读写外部存储器数据(RAM)的地址变为0x60000000+0X80000(FMC_A18即RS为1时)。
. K9 q; H0 k* ^0 X- I% l; o* a5 t' U
       32位宽的存储器也是如此。​​​

7 X  w: R$ s5 z3 r8 `
       无论外部接8位/16位/32位宽设备,FMC_A[0]永远接在外部设备地址A[0],HADDR[27:26]的设置,是不需要我们干预的,比如当你使用Bank1的第一个区,即使用FMC_NE1连接外部设备的时候,即对应了HADDR[27:26]=00,然后我们需要配置第一区的寄存器组,就可以使用了。
- {7 n) q/ v7 w
转自:冯冲123
5 }% d2 B5 j" l9 H: `
收藏 2 评论5 发布时间:2017-6-6 15:39

举报

5个回答
Inc_brza 回答时间:2017-6-26 14:45:14
谢谢分享,学习一下!
valetang-126879 回答时间:2017-6-26 16:56:17
帮顶一下
LJYHN 回答时间:2017-7-11 16:24:45
坐在沙发上看一会
xiatangtang 回答时间:2019-8-1 10:10:59
来学习,看一下
zhuzhe 回答时间:2020-3-28 16:04:32
学习一下

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版