A set of data recording functions to locally store data in a circular buffer, with functions for offloading to an SD Card when convenient. dataRecorderr.h shows accessible functions to the main program - all direct SD operations are abstracted away by the library. When using this library, #include dataRecorder.h
Dependencies: sd-driver_compatible_with_MAX32630FTHR
Fork of CircularBufferSDCardLib by
sdCardReader.h
- Committer:
- DVLevine
- Date:
- 2018-04-04
- Revision:
- 3:df8fb1b5d868
- Parent:
- 2:c2cfb0ebc3bd
- Child:
- 4:fe6d2823b7cb
File content as of revision 3:df8fb1b5d868:
#include "mbed.h" #include "SDBlockDevice.h" #include "iostream" #include "stdio.h" #include "string" #include "vector" #include <errno.h> #include "HeapBlockDevice.h" #include "platform/CircularBuffer.h" // File systems //#include "LittleFileSystem.h" #include "FATFileSystem.h" class SDCardReader:public SDBlockDevice{ public: SDCardReader(PinName a=MBED_CONF_SD_SPI_MOSI, PinName b=MBED_CONF_SD_SPI_MISO, PinName c=MBED_CONF_SD_SPI_CLK, PinName d=MBED_CONF_SD_SPI_CS):SDBlockDevice(a, b, c, d){ m_fs = new FATFileSystem("fs"); }; FILE* openFile(string filename); void closeFile(FILE* fileToClose); int writeDataPoint(int index, uint32_t timestamp, uint16_t* data); int eraseData(); int fullWriteProcedure(string filename,int* indexArr, uint32_t* timeArr, uint16_t** allData); void mountFileSystem(); void unmountFileSystem(); private: void write_uint16_t(uint16_t data, bool endline, FILE* fileToUse); void write_uint32_t(uint32_t data, bool endline, FILE* fileToUse); // Define file system FATFileSystem* m_fs; };