#include <SD.h>
#define FILE_PATH "/test.txt"
float quarters = 0;
void setup() {
Serial.begin(9600);
if (!SD.begin(4)) {
Serial.println("An Error has occurred while mounting SD");
while(1);
}
Serial.println("SD seems ok.");
}
void writefile(float message) {
SD.remove(FILE_PATH); // Wokwi seems to need this.
File file = SD.open(FILE_PATH, FILE_WRITE);
if (!file) {
Serial.println("Failed to open file for writing");
return;
}
file.seek(0); // If not a fresh file, you'd need this.
file.write((uint8_t*)&message,sizeof(float));
file.close();
}
float readfile(void) {
float outQuarters;
File file = SD.open(FILE_PATH, FILE_READ);
if (!file) {
Serial.println("Failed to open file for writing");
return;
}
file.seek(0);
file.read((uint8_t*)&outQuarters,sizeof(float));
file.close();
return outQuarters;
}
void loop() {
quarters++;
writefile(quarters);
quarters = readfile();
Serial.print("KYLE OWES: ");
Serial.print(quarters,0);
Serial.print(" quarters = $ ");
Serial.println(quarters/4);
delay(1000);
}