【转载】STM32 FSMC 配置说明

原创 2015年07月08日 12:30:06
  1. typedef struct
  2. {
  3.     uint32_t FSMC_Bank;                       //nor被分为四块,其中这个参数是说明对那个块编程
  4.     uint32_t FSMC_DataAddressMux;             //地址\数据是否复用
  5.     uint32_t FSMC_MemoryType;                 //存储器类型
  6.     uint32_t FSMC_MemoryDataWidth;            //数据总线宽度 8位/16位 
  7.     uint32_t FSMC_BurstAccessMode;            //是否进行成组模式访问
  8.     uint32_t FSMC_WaitSignalPolarity;         //等待信号有效级性
  9.     uint32_t FSMC_WrapMode;                   //该位决定控制器是否支持把非对齐的AHB成组操作分割成2次线性操作;该位仅在存储器的成组模式下有效。
  10.     uint32_t FSMC_WaitSignalActive;           //当闪存存储器处于成组传输模式时,NWAIT信号指示从闪存存储器出来的数据是否有效或是否需要插入等待周期。
  11.                                               //该位决定存储器是在等待状态之前的一个时钟周期产生NWAIT信号,还是在等待状态期间产生NWAIT信号。
  12.     uint32_t FSMC_WriteOperation;             //该位指示FSMC是否允许/禁止对存储器的写操作。
  13.     uint32_t FSMC_WaitSignal;                 //当闪存存储器处于成组传输模式时,这一位允许/禁止通过NWAIT信号插入等待状态。
  14.     uint32_t FSMC_ExtendedMode;               //该位允许FSMC使用FSMC_BWTR寄存器,即允许读和写使用不同的时序。
  15.     uint32_t FSMC_WriteBurst;                 //对于处于成组传输模式的闪存存储器,这一位允许/禁止通过NWAIT信号插入等待状态。读操作的同步成组传输协议使能位是FSMC_BCRx寄存器的BURSTEN位。
  16.     FSMC_NORSRAMTimingInitTypeDef* FSMC_ReadWriteTimingStruct;//读时序配置指针
  17.     FSMC_NORSRAMTimingInitTypeDef* FSMC_WriteTimingStruct;    //写时序配置指针
  18. }FSMC_NORSRAMInitTypeDef;
  1. typedef struct
  2. {
  3.   uint32_t FSMC_AddressSetupTime;       //这些位定义地址的建立时间,适用于SRAM、ROM和异步总线复用模式的 NOR闪存操作。
  4.   uint32_t FSMC_AddressHoldTime;        //这些位定义地址的保持时间,适用于SRAM、ROM和异步总线复用模式的 NOR闪存操作。
  5.   uint32_t FSMC_DataSetupTime;          //这些位定义数据的保持时间,适用于SRAM、ROM和异步总线复用模式的NOR闪存操作。
  6.   uint32_t FSMC_BusTurnAroundDuration;  //这些位用于定义一次读操作之后在总线上的延迟(仅适用于总线复用模式的NOR闪存操作),一次读操作之后控制器需要在数据总线上为下次操作送出地址,
  7.                                         //这个延迟就是为了防止总线冲突。如果扩展的存储器系统不包含总线复用模式的存储器,或最慢的存储器可以在6个HCLK时钟周期内将数据总线恢复到高阻状态,可以设置这个参数为其最小值。
  8.   uint32_t FSMC_CLKDivision;            //定义CLK时钟输出信号的周期,以HCLK周期数表示:
  9.   uint32_t FSMC_DataLatency;            //处于同步成组模式的NOR闪存,需要定义在读取第一个数据之前等待的存储器周期数目。
  10.                                         //这个时间参数不是以HCLK表示,而是以闪存时钟(CLK)表示。在访问异步NOR闪存、SRAM或ROM时,这个参数不起作用。操作CRAM时,这个参数必须为0。
  11.   uint32_t FSMC_AccessMode;             //访问模式
  12. }FSMC_NORSRAMTimingInitTypeDef;
版权声明:本文为博主原创文章,未经博主允许不得转载。

STM32探秘 之FSMC

STM32的FSMC真是一个万能的总线控制器,不仅可以控制SRAM,NOR FLASH,NAND FLASH,PC Card,还能控制LCD,TFT. 不过有时候它也很诡异.如 *(volati...

STM32 FSMC总线深入研究

STM32 FSMC总线深入研究   由于CPU与FPGA通信的需要,以及对8080总线的熟悉,首选采用了STM32的FSMC总线,作为片间通信接口。FSMC能达到16MHz的写入速度,理论上能写...
  • artmcu
  • artmcu
  • 2012年11月08日 15:39
  • 28416

STM32 FSMC 详解

LCD有如下控制线: CS:Chip Select 片选,低电平有效 RS:Register Select 寄存器选择 WR:Write 写信号,低电平有效 RD:Read 读信号,低电平有效 RES...

在使用STM32的FSMC的一些体会。。

刚开始接触感觉似乎hennan
  • bobbat
  • bobbat
  • 2014年08月18日 23:06
  • 1922

STM32 FSMC总线深入研究

STM32 FSMC总线深入研究   由于CPU与FPGA通信的需要,以及对8080总线的熟悉,首选采用了STM32的FSMC总线,作为片间通信接口。FSMC能达到16MHz的写入速度,理论上能写20...
  • dddxxxx
  • dddxxxx
  • 2016年11月15日 10:28
  • 603

STM32 FSMC的用法--LCD

节选自【ALIENTEK 战舰STM32开发板例程系列连载+教学】第十八章 TFTLCD显示实验 上一章我们介绍了OLED模块及其显示,但是该模块只能显示单色/双色,不能显示彩色,而且尺寸也较...

关于fsmc配置

在STM32F407编写ILI9331显示驱动时碰到的问题。

STM32的FSMC总线复用调试笔记

调试FSMC总线复用模式时主要遇到以下几点: 1、寄存器的配置,首先注意使能地址数据复用,其次要存储器类型选择FSMC_MemoryType_NOR,否则出现不了NADV信号。     FSMC_NO...
  • lg2lh
  • lg2lh
  • 2013年08月20日 19:26
  • 8316

stm32 FSMC的函数解释

介于网上找的库函数中文版没有FSMC的,所有只能在这边转载一下FSMC的函数解析,供像我这样的菜鸟学习 typedef struct { uint32_t FSMC_Bank;//nor被分...

在使用STM32的FSMC的一些体会。。

刚开始接触感觉似乎hennan
  • bobbat
  • bobbat
  • 2014年08月18日 23:06
  • 1922
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【转载】STM32 FSMC 配置说明
举报原因:
原因补充:

(最多只允许输入30个字)