因为项目的需要,我们通过GPIO模拟SPI总线的方式去读写M25P16这款flash芯片。

本文档会先介绍M25P16这款flash相关的特性,以及怎么读写操作它。

然后会贴出驱动代码,以及对应的测试程序。

注:驱动代码和测试程序都是经实际测试过的。

先说最后的结果:

1、驱动最后实现的效果可以让应用程序类似读写文件一样去读写flash。

2、读写速度:1MByte/S

 

M25P16介绍:

1、容量-2MByte 共32个扇区,每个扇区256页,每页256Byte  32*256*256=2097152Byte=2MByte

2、通信总线-SPI

3、总线速度-50MHz Clock Rate (maximum)

4、相关指令信息:

	ENUM_WRSR		=0x01,		//Write Status Register
	ENUM_PP			=0x02,		//Page Program
	ENUM_READ		=0x03,		//Read Data Bytes
	ENUM_WRDI		=0x04,		//Write Disable
	ENUM_RDSR		=0x05,		//Read Status Register
	ENUM_WREN		=0x06,		//Write Enable
	ENUM_FAST_READ	        =0x0b,		//Read Data Bytes at Higher Speed
	ENUM_RDID		=0x9f,		//Read Identification
	ENUM_RES		=0xab,		//Release from Deep Power-down,and Read Electroni

版权声明:本文为a3121772305原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/a3121772305/article/details/116854280