#include #include #include "settings.h" void store_init() { // NOTE: If this doesn't work, then we need to use pinMode() & specify the data pin here instead. if(!SD.begin(PIN_SD_SPI_CHIP_SELECT)) { Serial.println(F("Error: Failed to initialise connection to microSD card")); while(true) { delay(1); } // Pseudo-halt, but uses delay() to ensure we keep passing back control to allow easy re-programming } } void store_reading(uint32_t id, TinyGPSLocation location) { // Open the file to write the data to. If it doesn't exist it will be created. // Unlike elsewhere, FILE_WRITE opens the file with the cursor starting at the end, so it's basically actually equivalent to FILE_APPEND that we use in other environments. Confusing, I know. File handle = SD.open(SD_FILENAME, FILE_WRITE); handle.print(id); handle.print("\t"); handle.print(location.longitude()); handle.print("\t"); handle.print(location.latitude()); handle.println(); handle.close(); } void store_close() { SD.end(); }