W25Q64存储器模块
模块来源
规格参数
实测可以接到5V电源。
硬件接口
- 将W25Q64的Vcc引脚连接到开发板的5V。
- 将W25Q64的GND引脚连接到开发板的GND。
- 将W25Q64的CS(片选)引脚连接到开发板的数字引脚(例如10号引脚)。
- 将W25Q64的CLK(时钟)引脚连接到开发板的13号引脚(SCK)。
- 将W25Q64的DI(数据输入)引脚连接到开发板的11号引脚(MOSI)。
- 将W25Q64的DO(数据输出)引脚连接到开发板的12号引脚(MISO)。
使用方法
安装库
- 在Arduino IDE中打开“工具” > “管理库”,搜索"SPIMemory"并安装这个库。
编写代码
c
/******************************************************************************
* 测试硬件:ColorEasyDuino开发板
* 版 本 号: V1.0
* 修改作者: www.lckfb.com
* 修改日期: 2024年04月18日
* 功能介绍:
*****************************************************************************
* 开发板软硬件资料与相关项目软硬件资料官网全部开源
* 开发板官网:www.lckfb.com
* 技术支持常驻论坛,任何技术问题欢迎随时交流学习
* 立创论坛:club.szlcsc.com
* 关注bilibili账号:【立创开发板】,掌握我们的最新动态!
* 不靠卖板赚钱,以培养中国工程师为己任
******************************************************************************/
#include <SPI.h>
#include <SPIMemory.h>
#define FLASH_CS 10 // W25Q64的CS连接到Arduino的10号引脚
SPIFlash flash(FLASH_CS);
void setup() {
Serial.begin(9600);
if (!flash.begin()) {
Serial.println("初始化Flash失败!");
return;
}
Serial.println("Flash初始化成功!");
uint32_t jedecID = flash.getJEDECID();
Serial.print("JEDEC ID: ");
Serial.println(jedecID, HEX);
// 写入数据到地址0的位置
flash.writeByte(0, 0xA5);
// 读取地址0的数据
uint8_t readData = flash.readByte(0);
Serial.print("读取到的数据: ");
Serial.println(readData, HEX);
}
void loop() {
// 不需要重复执行的代码
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45