20-stm32cubemx系列教程20-nand flash.pdfVIP

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
20-stm32cubemx系列教程20-nand flash

STM32CubeMX 系列教程20:Nand Flash 摘要: 本章讲解通过FMS 接口控制Nand Flash K9F1G08U0E (1G Bit) 一、Nand Flash 简介 Flash 中文名字叫闪存,是一种长寿命的非易失性(断电数据不丢失)的存储器。可以 对称为块的存储器单元块进行擦写和再编程,在进行写入操作之前必须先执行擦除。功能性分 为两种: NOR Flash:允许随机存取存储器上的任何区域,以编码应用为主,其功能多与运算相关 Nand Flash:主要功能是存储资料,适合储存卡之类的大量数据的存储。 本章以 K9F1G08U0E 芯片为例讲解 Nand Flash。如下为此芯片的数据手册: K9F1G08U0E.pdf 二、Nand Flash 存储结构 一个 Nand Flash 由多个块(Block)组成,每个块里面又包含很多页(page)。每个页对应 一个空闲区域/冗余区域(spare area),这个区域不是用来存储数据的,用于放置数据的校验值检 测和纠错的。 块,是 Nand Flash 的擦除操作的基本/最小单位。 页,是 Nand Flash 的写入操作的基本/最小的单位。 从上图可知,K91FG080U0E 包含 1024 Blocks,每个Block 包含 64 Pages,每个Page 包 含 2K Bytes 数据空间 + 64 Bytes 冗余空间。故总大小=1024 Blocks x 64 Pages x (2K+ 64) B = (1024 + 32) MBits = 1G Bits。 K91G08U0E 功能框图如下: 三、Nand Flash 引脚功能说明 上图是常见的 Nand Flash 所拥有的引脚(Pin)所对应的功能,简单翻译如下: 1. I/O0 ~ I/O7:用于输入地址/数据/命令,输出数据 2. CLE :Command Latch Enable ,命令锁存使能,在输入命令之前,要先在模式寄存器 中,设置CLE 使能 3. ALE :Address Latch Enable,地址锁存使能,在输入地址之前,要先在模式寄存器 中,设置ALE 使能 4. CE# :Chip Enable ,芯片使能,在操作Nand Flash 之前,要先选中此芯片,才能操 作 5. RE#:Read Enable,读使能,在读取数据之前,要先使CE #有效。 6. WE# :Write Enable ,写使能,在写取数据之前,要先使 WE #有效。 7. WP# :Write Protect ,写保护 8. R/B#:Ready/Busy Output,就绪/忙,主要用于在发送完编程/擦除命令后,检测这些操作 是否完成,忙,表示编程/擦除操作仍在进行中,就绪表示操作完成. 9. Vcc :Power,电源 10.Vss :Ground ,接地 11.N.C:Non-Connection,未定义,未连接 (字母上面带横杠说明引脚是低电平有效,为书写方便,在字母后面加“#”表示) 四、可变存储控制器(FMC) FMC,即可变存储控制器,为 STM32 系列单片机的接口,本章就是通过这个接口控制 NAND FLAHS。 FMC 功能块可连接:同步/异步静态存储器、 SDRAM 存储器和 NAND Flash。其主要用途 有: • 将 AHB 数据通信事务转换为适当的外部器件协议 • 满足外部存储器器件的访问时间要求 说得复杂一点,FMC 个功能就是将读写 stm32 内部地址操作转换为输出满足外部存储 器的时序读写外部存储器。例如对 STM32 内部Ox8000 0000 地址写入一个数据,FMC 控制 器会控制对应的管脚输出一个满足 Nand Flash 的时序,发送一个数据到 Nand Flash 设备。 同理读取读取内部的寄存器,也会生成一个时序从 Nand Flash 读取一个数据。因此通过 FMC 控制外设非常简单,只需读写 STM32 内部寄存器即可实现对外部存储器的读写操作。我们只 需配置好 FMC 时序寄存器,使产生的时序满足外部存储器的访问时间要求。 FMC 框图如上图,所有外部存储器共享地址、数据和控制信号, 但有各自的片选信 号。 FMC 一次只能访问一个外部器件。其中 FMC_A[25:0],FMC_D[31:00]为地址线和数据线,

文档评论(0)

561190792 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档