SST25VF080B 读写测试-Arduino中文社区 - Powered by Discuz! Archiver

Zoologist 发表于 2022-10-11 12:27

SST25VF080B 读写测试

SST25VF080B 是一款 SPI NOR 芯片,容量为1MB(8MBITs)。这次测试的使用 Arduino Pro Micro 进行读写(它使用32U4作为主控,工作在8Mhz,3.3V 下面)。特别注意,这个SPINOR 工作电压为3.3V。具体连接如下:
芯片引脚芯片功能Arduino Arduino芯片功能芯片引脚
1CS#D6 3.3VVCC8
2MISOD14D7HOLD#7
3WP#D4D15SCK6
4GNDGNDD16MOSI5
编写的测试代码如下(这个是我写的,库里面也带例子):#include <SST25VF.h>
#include <SPI.h>


#define MemCs 6 //CS#
#define MemWp 4 //WP#
#define MemHold 7 //HOLD#
#define EraseSwitch5 //擦除开关
#define WriteSwitch8 //写入开关

SST25VF flash;

uint8_t buffer[]="www.lab-z.com 2022";

void setup() {
Serial.begin(115200);
pinMode(EraseSwitch, INPUT_PULLUP);
pinMode(WriteSwitch, INPUT_PULLUP);

flash.begin(MemCs, MemWp, MemHold);
}

void loop() {
// 函数内部直接串口输出
flash.readID();
if (digitalRead(EraseSwitch) == LOW) {
    // 擦除 Sector 0
    Serial.println("erasing...");
    flash.sectorErase(0);
}
if (digitalRead(WriteSwitch) == LOW) {
    // 写入字符串
    Serial.println("writing...");
    flash.writeArray(0,buffer,sizeof(buffer));
}

//读取
flash.readArray(0,buffer,sizeof(buffer));
Serial.print("Read: ");
for (int i=0;i<sizeof(buffer);i++) {
      Serial.print((char)buffer);
    }
Serial.println("");

delay(5000);
}

库下载


页: [1]
查看完整版本: SST25VF080B 读写测试