2. SPIFFS.open //创建或打开文件
参数:
4. SPIFFS.exists("/test.txt") //判断有没有某个文件
SPIFFS.exists("/test.txt");
5. SPIFFS.remove("/test.txt"); //删除某个文件
SPIFFS.exists("/test.txt")
6. SPIFFS.rename("原文件名","新文件名"); //文件重命名
7. SPIFFS.end(); //结束文件系统挂载
3. file.println(""); //往文件中写入一行内容
这个方法有好多个重载, 输入内容的方式比较丰富,可用看一下源码了解一下
4. file.printf(); //写入内容
file.printf("tizhong:%dKG",90);
5. file.find('!'); //在文件中寻找某个char或字符串
返回布尔值!
4. file.findUntil("haha","!"); //在文件中寻找某个char或字符串(遇到某字符串就停止)
返回布尔值!
5. file.close(); //关闭文件
6. file.size(); //文件大小
读模式下能返回文件大小,写模式下返回 -负值文件大小
8. file.readStringUntil(); //读取字符串, 遇到终止符终止, 返回读取字符串
9. file.readBytes(); //读取数据到buf中,
char *buf;
10. file.readBytesUntil('1',buf,15); //读取数据到buf中, 遇到终止符终止
uint8_t *buf;
三. 简单测试
#include <Arduino.h> #include <SPIFFS.h> void setup() { Serial.begin(115200); delay(3000); Serial.println("opening SPIFFS"); while (!SPIFFS.begin()) { Serial.print("..."); } Serial.println("SPIFFS OK!"); File file = SPIFFS.open("/test.txt", FILE_WRITE); if (!file) { Serial.println("open file failed"); } Serial.println(file.print("hello,xiongba!")); file.println("xiongba,haha"); Serial.println(file.print("hello,xiongba!")); file.printf("tizhong:%dKG",90); file.close(); file = SPIFFS.open("/test.txt", FILE_READ); Serial.print("可用file.available():"); Serial.println(file.available()); Serial.print("test.txt的大小:"); Serial.println(file.size()); Serial.print("读取文件"); String data = file.readString(); Serial.println(data); Serial.print("寻找字符串"); Serial.println(file.find('!')); file.findUntil("haha","!"); Serial.println(file.name()); file.close(); Serial.printf("SPIFFS的总体积: %d 字节\r\n", SPIFFS.totalBytes()); Serial.printf("SPIFFS的已用体积: %d 字节\r\n", SPIFFS.usedBytes()); Serial.print("现在存在/test.txt吗:"); Serial.println(SPIFFS.exists("/test.txt")); Serial.println("现在把/test.txt改名为/test2.txt"); SPIFFS.rename("/test.txt", "/test2.txt"); Serial.print("现在存在/test.txt吗:"); Serial.println(SPIFFS.exists("/test.txt")); Serial.print("现在存在/test2.txt吗:"); Serial.println(SPIFFS.exists("/test2.txt")); Serial.println("删除/test2.txt"); SPIFFS.remove("/test2.txt"); Serial.print("现在还存在/test2.txt吗:"); Serial.println(SPIFFS.exists("/test2.txt")); SPIFFS.end(); } void loop() { }
#include <Arduino.h> #include <SPIFFS.h> void setup() { Serial.begin(115200); delay(3000); Serial.println("opening SPIFFS"); while (!SPIFFS.begin()) { Serial.print("..."); } Serial.println("SPIFFS OK!"); File file = SPIFFS.open("/test.txt", FILE_WRITE); if (!file) { Serial.println("open file failed"); } Serial.println(file.print("hello,xiongba!")); file.println("xiongba,haha"); Serial.println(file.print("hello,xiongba!")); file.printf("tizhong:%dKG",90); file.close(); file = SPIFFS.open("/test.txt", FILE_READ); Serial.print("可用file.available():"); Serial.println(file.available()); Serial.print("test.txt的大小:"); Serial.println(file.size()); Serial.print("读取文件"); String data = file.readString(); Serial.println(data); Serial.print("寻找字符串"); Serial.println(file.find('!')); file.findUntil("haha","!"); Serial.println(file.name()); file.close(); Serial.printf("SPIFFS的总体积: %d 字节\r\n", SPIFFS.totalBytes()); Serial.printf("SPIFFS的已用体积: %d 字节\r\n", SPIFFS.usedBytes()); SPIFFS.end(); } void loop() { }
2. FILE_APPEND模式
File file = SPIFFS.open("/test.txt", FILE_APPEND);
ESP32的DAC函数可以实现真正的模拟输出。
ESP32 没有Arduino输出 PWM 的 analogWrite(pin, value) 方法,取而代之的 ESP32 有一个 LEDC 来实现PWM功能。
本文学习如何使用ESP32开发板来进行多线程的开发。
ESP8266有三种工作模式,分别为:AP,STA,AP混合STA
ESP32有四个SPI外设,分别为SPI0、SPI1、HSPI和VSPI。