2
2
#include " SPIFFS.h"
3
3
4
4
void listDir (fs::FS &fs, const char * dirname, uint8_t levels){
5
- Serial.printf (" Listing directory: %s\n " , dirname);
5
+ Serial.printf (" Listing directory: %s\r\ n " , dirname);
6
6
7
7
File root = fs.open (dirname);
8
8
if (!root){
9
- Serial.println (" Failed to open directory" );
9
+ Serial.println (" - failed to open directory" );
10
10
return ;
11
11
}
12
12
if (!root.isDirectory ()){
13
- Serial.println (" Not a directory" );
13
+ Serial.println (" - not a directory" );
14
14
return ;
15
15
}
16
16
@@ -25,116 +25,128 @@ void listDir(fs::FS &fs, const char * dirname, uint8_t levels){
25
25
} else {
26
26
Serial.print (" FILE: " );
27
27
Serial.print (file.name ());
28
- Serial.print (" SIZE : " );
28
+ Serial.print (" \t SIZE : " );
29
29
Serial.println (file.size ());
30
30
}
31
31
file = root.openNextFile ();
32
32
}
33
33
}
34
34
35
35
void readFile (fs::FS &fs, const char * path){
36
- Serial.printf (" Reading file: %s\n " , path);
36
+ Serial.printf (" Reading file: %s\r\ n " , path);
37
37
38
38
File file = fs.open (path);
39
39
if (!file || file.isDirectory ()){
40
- Serial.println (" Failed to open file for reading" );
40
+ Serial.println (" - failed to open file for reading" );
41
41
return ;
42
42
}
43
43
44
- Serial.print ( " Read from file: " );
44
+ Serial.println ( " - read from file:" );
45
45
while (file.available ()){
46
46
Serial.write (file.read ());
47
47
}
48
48
}
49
49
50
50
void writeFile (fs::FS &fs, const char * path, const char * message){
51
- Serial.printf (" Writing file: %s\n " , path);
51
+ Serial.printf (" Writing file: %s\r\ n " , path);
52
52
53
53
File file = fs.open (path, FILE_WRITE);
54
54
if (!file){
55
- Serial.println (" Failed to open file for writing" );
55
+ Serial.println (" - failed to open file for writing" );
56
56
return ;
57
57
}
58
58
if (file.print (message)){
59
- Serial.println (" File written" );
59
+ Serial.println (" - file written" );
60
60
} else {
61
- Serial.println (" Write failed" );
61
+ Serial.println (" - frite failed" );
62
62
}
63
63
}
64
64
65
65
void appendFile (fs::FS &fs, const char * path, const char * message){
66
- Serial.printf (" Appending to file: %s\n " , path);
66
+ Serial.printf (" Appending to file: %s\r\ n " , path);
67
67
68
68
File file = fs.open (path, FILE_APPEND);
69
69
if (!file){
70
- Serial.println (" Failed to open file for appending" );
70
+ Serial.println (" - failed to open file for appending" );
71
71
return ;
72
72
}
73
73
if (file.print (message)){
74
- Serial.println (" Message appended" );
74
+ Serial.println (" - message appended" );
75
75
} else {
76
- Serial.println (" Append failed" );
76
+ Serial.println (" - append failed" );
77
77
}
78
78
}
79
79
80
80
void renameFile (fs::FS &fs, const char * path1, const char * path2){
81
- Serial.printf (" Renaming file %s to %s\n " , path1, path2);
81
+ Serial.printf (" Renaming file %s to %s\r\ n " , path1, path2);
82
82
if (fs.rename (path1, path2)) {
83
- Serial.println (" File renamed" );
83
+ Serial.println (" - file renamed" );
84
84
} else {
85
- Serial.println (" Rename failed" );
85
+ Serial.println (" - rename failed" );
86
86
}
87
87
}
88
88
89
89
void deleteFile (fs::FS &fs, const char * path){
90
- Serial.printf (" Deleting file: %s\n " , path);
90
+ Serial.printf (" Deleting file: %s\r\ n " , path);
91
91
if (fs.remove (path)){
92
- Serial.println (" File deleted" );
92
+ Serial.println (" - file deleted" );
93
93
} else {
94
- Serial.println (" Delete failed" );
94
+ Serial.println (" - delete failed" );
95
95
}
96
96
}
97
97
98
98
void testFileIO (fs::FS &fs, const char * path){
99
- File file = fs.open (path);
99
+ Serial.printf (" Testing file I/O with %s\r\n " , path);
100
+
100
101
static uint8_t buf[512 ];
101
102
size_t len = 0 ;
103
+ File file = fs.open (path, FILE_WRITE);
104
+ if (!file){
105
+ Serial.println (" - failed to open file for writing" );
106
+ return ;
107
+ }
108
+
109
+ size_t i;
110
+ Serial.print (" - writing" );
102
111
uint32_t start = millis ();
103
- uint32_t end = start;
112
+ for (i=0 ; i<2048 ; i++){
113
+ if ((i & 0x001F ) == 0x001F ){
114
+ Serial.print (" ." );
115
+ }
116
+ file.write (buf, 512 );
117
+ }
118
+ Serial.println (" " );
119
+ uint32_t end = millis () - start;
120
+ Serial.printf (" - %u bytes written in %u ms\r\n " , 2048 * 512 , end);
121
+ file.close ();
122
+
123
+ file = fs.open (path);
124
+ start = millis ();
125
+ end = start;
126
+ i = 0 ;
104
127
if (file && !file.isDirectory ()){
105
128
len = file.size ();
106
129
size_t flen = len;
107
130
start = millis ();
131
+ Serial.print (" - reading" );
108
132
while (len){
109
133
size_t toRead = len;
110
134
if (toRead > 512 ){
111
135
toRead = 512 ;
112
136
}
113
137
file.read (buf, toRead);
138
+ if ((i++ & 0x001F ) == 0x001F ){
139
+ Serial.print (" ." );
140
+ }
114
141
len -= toRead;
115
142
}
143
+ Serial.println (" " );
116
144
end = millis () - start;
117
- Serial.printf (" %u bytes read for %u ms\n " , flen, end);
145
+ Serial.printf (" - %u bytes read in %u ms\r \n" , flen, end);
118
146
file.close ();
119
147
} else {
120
- Serial.println (" Failed to open file for reading" );
121
- }
122
-
123
-
124
- file = fs.open (path, FILE_WRITE);
125
- if (!file){
126
- Serial.println (" Failed to open file for writing" );
127
- return ;
148
+ Serial.println (" - failed to open file for reading" );
128
149
}
129
-
130
- size_t i;
131
- start = millis ();
132
- for (i=0 ; i<2048 ; i++){
133
- file.write (buf, 512 );
134
- }
135
- end = millis () - start;
136
- Serial.printf (" %u bytes written for %u ms\n " , 2048 * 512 , end);
137
- file.close ();
138
150
}
139
151
140
152
void setup (){
@@ -146,12 +158,14 @@ void setup(){
146
158
147
159
listDir (SPIFFS, " /" , 0 );
148
160
writeFile (SPIFFS, " /hello.txt" , " Hello " );
149
- appendFile (SPIFFS, " /hello.txt" , " World!\n " );
161
+ appendFile (SPIFFS, " /hello.txt" , " World!\r\ n " );
150
162
readFile (SPIFFS, " /hello.txt" );
151
- deleteFile (SPIFFS, " /foo.txt" );
152
163
renameFile (SPIFFS, " /hello.txt" , " /foo.txt" );
153
164
readFile (SPIFFS, " /foo.txt" );
165
+ deleteFile (SPIFFS, " /foo.txt" );
154
166
testFileIO (SPIFFS, " /test.txt" );
167
+ deleteFile (SPIFFS, " /test.txt" );
168
+ Serial.println ( " Test complete" );
155
169
}
156
170
157
171
void loop (){
0 commit comments