JFM25F32A Flash写操作流程如图1所示,对于Flash类型的存储器,向已经存在数据的单元写入数据时,直接写入是无法写入的,在写入之前必须先执行擦除命令,再进行写入即可;如果待写入的单元为新的单元(“FF”),则可以直接写入数据。下面为Flash写操作的流程,如果写入的单元为新的数据单元,则写操作中的擦除流程可以取消掉。

1. JFM25F32A操作指令(instruction)的规则

(1) JFM25F32A Flash存储单元的地址为24bit ADDR[23:0],每一个基本存储单元容量为一个字节;
(2) 数据移位时,高位在前,低位在后;
(3) 页编程命令至少需要一个字节的数据,最多256个字节的数据;
(4) 每一个操作指令通过SPI接口独立的写入,CS#下降沿开始每一个指令的传输,CS#上升沿结束本次命令,执行相应的操作写入相应的指令即可;
(5) 在向存入数据的单元写入数据时,必须先进行擦除操作,再写入相应的数据;

2 指令列表

3. JFM25F32A的状态寄存器

JFM25F32A有两个状态寄存器,状态寄存器1(S7-S0),状态寄存器2(S15-S8)两个,具体的位分布如下:
表2状态寄存器1
S7 S6 S5 S4 S3 S2 S1 S0
SRP0 SEC TB BP2 BP1 BP0 WEL WIP
表3状态寄存器2
S15 S14 S13 S12 S11 S10 S9 S8
R CMP ERR R R LB R SRP1
注:在进行读写操作时,我们只需要读状态寄存器1,判断其中的WEL位于WIP位即可,状态寄存器2以及状态寄存器1的其他位不需要关注。

4 编程注意事项
编写Flash驱动程序时,除了在保证驱动时序正确的情况下,还应该关注相应操作所需的时间条件,即:每一次执行相应的命令至少需要的时间,这些参数告诉我们,即使这个指令发送完毕,也不能立即操作,也需等待这么久的空闲时间才能进行下一次操作,特别是在擦除操作、写操作必须满足相应的时间;这些参数的获取在器件手册的交流参数表中获取。JFM25F32A的关键交流参数如表5。
符号 参数含义 MIN TYP(典型) MAX
Tpp 页编程时间 — 5ms
Tse 扇区擦除时间 300ms
Tbe 区块擦除时间 3s
Tce 全芯片擦除 12s 100s
注:在使用时必须注意这些参数,否则有可能导致读写操作失败,数据写不进去,或者第一个数据写进去。
5 JFM25F32A相应操作时序图
以下的所有时序图,均是在SPI模式下操作Flash的时序图。
(1)读状态寄存器时图

(2)写使能时序图

(3)扇区擦除时序图

(4)页编程时序图

(5)读操作时序图

创作不易,如果笔者的搓作对您有帮助,请您点赞关注一下;如果需要提供基于FPGA Verilog的Flash操作帮助,可以在下方评论。联系邮箱:cwnult2021@163.com

Flash之SM25QH128M、JFM25F32A读写操作FPGA Verilog实现相关推荐

  1. FLASH的基本原理与读写操作笔记

    一.概念: 每个文件对应多个block,每个block对对应多个扇区sector,每个sector对应有多个页. 一般一个扇区(sector)多个页(page)  , 一个块 (bank)又有多个扇区 ...

  2. ESP8266 Flash的分布及其读写操作

    读写操作API 基本操作 (1) spi_flash_erase_sector 功能 擦除 Flash 的某个扇区. 函数定义 SpiFlashOpResult spi_flash_erase_sec ...

  3. 【FPGA】SPI协议详解及对flash读写操作

    FPGA基于SPI实现对flash读写操作 概括 一.SPI协议.flash讲解 1.SPI协议 2.flash (1)WREN (2)RDID (3)WRSR (4)READ (5)PP (6)SE ...

  4. FPGA中用verilog直接读写操作SDRAM

    1 简介 SDRAM 型号为MT48LC32M16A2.SDRAM,英文名是: Synchronous Dynamic Random Access Memory,相较于 SRAM(静态存储器), SD ...

  5. FPGA — BRAM学习笔记—读写操作

    使用软件: Vivado 开发板: EGO1采用Xilinx Artix-7系列XC7A35T-1CSG324C FPGA BRAM笔记 BRAM介绍 同步双端口BRAM BRAM读写操作 (1)读操 ...

  6. STM32:Flash擦除与读写操作(HAL库)

    应用平台:STM32F030F4P6 ST官方库:STM32Cube_FW_F0_V1.9.0 背景知识 绝大多数的单片机和微控制器(ARM,x86),地址空间都是以字节为单位的,也就是说一个地址是一 ...

  7. NAND FLASH 读写操作 简介

    NAND FLASH 内存详解与读写寻址方式 一.内存详解 NAND闪存阵列分为一系列128kB的区块(block),这些区块是 NAND器件中最小的可擦除实体.擦除一个区块就是把所有的位(bit)设 ...

  8. NAND FLASH的读写操作(硬件原理图分析)

    转载:NAND FLASH的读操作及原理 硬件原理 上面是我使用的NAND FLASH的硬件原理图,面对这些引脚,很难明白他们是什么含义,下面直接引用韦东山老师的课程中的提问: NAND FLASH是 ...

  9. Esp8266的Flash读写操作以及Flash上传文件

    1.Flash的读写操作 Esp8266的Flash为4M,其中1M用于存储程序,其他的空间有一部分用于系统,3M中剩下的大部分空间可以用来存放文件. #include <FS.h> St ...

最新文章

  1. 安卓linux定时执行脚本,Android开机自动执行shell脚本
  2. 在Centos 6.x 下yum安装php 5.5
  3. Linux 增大Swap
  4. java基本类_Java基本类型
  5. html笔记(四)弹性盒+响应式
  6. 530. 二叉搜索树的最小绝对差
  7. php 修改密码提示,修改密码通知
  8. OpenShift 4 之使用https协议访问Route
  9. PCL点云参数估计算法之RANSAC和LMEDS
  10. [LeetCode]168. Excel Sheet Column Title
  11. 地理信息系统GIS在城市生活垃圾管理中的应用时间
  12. 阿里云商标安心注册服务失败不通过可以退款?
  13. 计算机辅助翻译小结,计算机辅助翻译
  14. DMP (Dynamic Movement Primitives) 动态运动基元
  15. Python 打印的中英文字体如何对齐?
  16. 形态学操作之腐蚀、膨胀、开运算、闭运算、梯度运算、顶帽和黑帽
  17. antDesignPro线上刷新404 和 liunx部署使用mock数据 umi-serve + pm2
  18. CentOS 使用ifconfig没有显示ip
  19. 激活office 2010
  20. 计算机第一性原理局限性,第一性原理分子动力学

热门文章

  1. linux根分区写保护,目录写保护,求助大神
  2. 77% 的 Android 手机已换上 Eclair 或 Froyo 系统
  3. 给定一个 32 位有符号整数,将整数中的数字进行反转。
  4. bootpdf下载 spring_SpringBoot教程 PDF 下载
  5. 我国北斗卫星导航系统今日起试运行
  6. 51nod 1431 快乐排队
  7. Word章节自动编号+题注自动编号+公式编号+交叉引用
  8. Google的地理信息反向编码结果中的字段说明
  9. java怎么实现按键音_实例:使用Javascript制作声音按钮
  10. Funexpected宣布推出全新的遵循渐进式课程,它有直观界面、丰富多彩的游戏世界、个性化数字导师等