spi flash 操作】的更多相关文章

W25Q16V 是华邦出的一颗 spi flash. 25系列是比较通用的一个系列. 后面的数字 16 跟容量有关, 16 表示 16Mbits, 相当于 2MB. 与此类似的还有 W25Q128V 等, 128 就表示容量 16MB. 对于 W25Q16V: page 为最大的编程单位. 1 page = 256 bytes sector 为最小的擦除单位, 1sector = 16 pages = 4096 bytes (4KB) 块擦除有两种大小: 32K block = 8 secotr…
1. SPI总线简介 SPI全称串行外设接口,是一种高速,全双工,同步的外设总线:它工作在主从方式,常规需要至少4根线才能够正常工作.SPI作为基本的外设接口,在FLASH,EPPROM和一些数字通讯中,具有广泛的应用.SPI总线由四个接口构成: CS  :片选端,由主设备控制 MISO:主设备输入,从设备输出 MOSI:主设备输出,从设备输入 SCK :时钟信号 其中SCK仅能由主设备提供,且接收和发送和同时产生的,因此在主设备接收数据时也要先发送数据从而为从设备提供时钟:根据SPI时钟信号配…
前言:    在嵌入式开发中,如uboot的移植,kernel的移植都需要对Flash 有基本的了解.下面细说一下标题中的中Flash中的关系 一,Flash的内存存储结构    flash按照内部存储结构不同,分为两种:nor flash和nand flash. NorFLASH使用方便,易于连接,可以在芯片上直接运行代码,稳定性出色,传输速率高,在小容量时有很高的性价比,这使其很适合应于嵌入式系统中作为 FLASH ROM.    相对于NorFLASH,NandFLASH强调更高的性能,更…
使用了MX25L512的SPI接口的Flash 电路连接图: 总的大小512kb,即64kB,sector的大小为256 Bytes,block的大小为4k Bytes 调试时出现的问题: 1.Flash只能读数据,不能写数据 根源在于Flash的软件写保护没有去掉,这样,写.擦除,甚至写状态寄存器都不能执行. 1)Hardware Protection Hardware Protection Mode(HPM):by using WP# going low to protect the BP0…
引言 经过前面的分析和介绍,我们对ORPSoC的启动过程(http://blog.csdn.net/rill_zhen/article/details/8855743)和 ORpSoC的debug子系统(http://blog.csdn.net/rill_zhen/article/details/9045837)有了初步的了解, 但是对于启动和debug前的工作还没有仔细分析过.比如FPGA是怎么config的,orpmon是怎么load的,是如何事先烧到外部的flash里的,等等. 本小节就试…
读取厂家\设备 ID 发送 90H 指令,再发送 00h 的地址,然后接收即可. 代码如下: void SPIFlashReadID(int *pMID, int *pDID) { SPIFlash_Set_CS(0); /* 选中SPI FLASH */ SPISendByte(0x90); SPIFlashSendAddr(0); *pMID = SPIRecvByte(); *pDID = SPIRecvByte(); SPIFlash_Set_CS(1); } 两个状态寄存器 通过状态寄…
前言 大多数玩单片机的人都知道Jlink可以烧写Hex文件,作为ARM仿真调试器,但是知道能烧写SPI Flash的人应该不多,本篇文章将介绍如何使用JLink来烧写或者读取SPI Flash存储器,JLink软件包含的工具中,有一个是JFlashSPI工具,这就是一个烧写和读取SPI存储器的工具了. 准备 要烧写程序或读取程序的的Flash芯片:SPI协议的Flash都可以,如W25Q128. JFlashSPI软件工具:在Jlink系列软件的安装目录下 JLink V9仿真器 要烧写的文件:…
如果从头开始做SPI Flash固化是有一些麻烦的,要在完成综合之后,打开 synthesized Design (图) (图) 然后在synthesized Design打开状态下,选择Tools->Edit Device Properties编辑器件属性 (图) 我们这个FPGA有16MFlash,是Master SPIx1,大家有兴趣可以看一下Xilinx官网配置,你在此处修改都会保存在已经激活的xdc文件 (图) (图) (图) Finish就可以了,把synthesis去掉 (图) 我…
背景: MCU:STM32F207 SPI flash: Winbond W25Q16BV OS: RTT V1.1.1 bsp: STM32F20x 1 将spi_core.c,spi_dev.c及spi.h三个文件加入工程 spi_core.c,spi_dev.c这两个文件位于RTT\components\drivers\spi目录下,而spi.h头文件位于RTT\\components\drivers\include\drivers目录下. 可在MKD工程的Drivers组下将上面两个源文…
W25Q80BV是台湾华邦电子(Winbond)生产的8M-bit串行flash芯片.主要特性有: 工作电压:2.5 ~ 3.6 V 功耗:读写(active)时4mA,低功耗(power-down)时<1μA 容量:8M-bit/1M-byte,包含4096个页(每页大小256字节) 接口:Standard/Dual/Quad SPI,支持时钟频率最高104MHz 支持以4/32/64k-bytes为单位进行Sector/Block擦除 一次写入最多256字节 软件/硬件写保护功能 大于10万…