esemi00

Dependencies:   mbed FatFileSystemCpp

Committer:
esemi00
Date:
Wed Jan 20 05:26:12 2021 +0000
Revision:
0:cfcd0d010286
esemi00

Who changed what in which revision?

UserRevisionLine numberNew contents of line
esemi00 0:cfcd0d010286 1 /* USB Mass Storage device file system
esemi00 0:cfcd0d010286 2 * Copyrigh (c) 2010, Igor Skochinsky
esemi00 0:cfcd0d010286 3 * based on SDFileStorage
esemi00 0:cfcd0d010286 4 * Copyright (c) 2008-2009, sford
esemi00 0:cfcd0d010286 5 */
esemi00 0:cfcd0d010286 6
esemi00 0:cfcd0d010286 7 #ifndef MSCFILESYSTEM_H
esemi00 0:cfcd0d010286 8 #define MSCFILESYSTEM_H
esemi00 0:cfcd0d010286 9
esemi00 0:cfcd0d010286 10 #include "mbed.h"
esemi00 0:cfcd0d010286 11 #include "FATFileSystem.h"
esemi00 0:cfcd0d010286 12
esemi00 0:cfcd0d010286 13 /* Class: MSCFileSystem
esemi00 0:cfcd0d010286 14 * Access the filesystem on an attached USB mass storage device (e.g. a memory stick)
esemi00 0:cfcd0d010286 15 *
esemi00 0:cfcd0d010286 16 * Example:
esemi00 0:cfcd0d010286 17 * > MSCFileSystem msc("msc");
esemi00 0:cfcd0d010286 18 * >
esemi00 0:cfcd0d010286 19 * > int main() {
esemi00 0:cfcd0d010286 20 * > FILE *fp = fopen("/msc/myfile.txt", "w");
esemi00 0:cfcd0d010286 21 * > fprintf(fp, "Hello World!\n");
esemi00 0:cfcd0d010286 22 * > fclose(fp);
esemi00 0:cfcd0d010286 23 * > }
esemi00 0:cfcd0d010286 24 */
esemi00 0:cfcd0d010286 25 class MSCFileSystem : public FATFileSystem {
esemi00 0:cfcd0d010286 26 public:
esemi00 0:cfcd0d010286 27
esemi00 0:cfcd0d010286 28 /* Constructor: MSCFileSystem
esemi00 0:cfcd0d010286 29 * Create the File System for accessing a USB mass storage device
esemi00 0:cfcd0d010286 30 *
esemi00 0:cfcd0d010286 31 * Parameters:
esemi00 0:cfcd0d010286 32 * name - The name used to access the filesystem
esemi00 0:cfcd0d010286 33 */
esemi00 0:cfcd0d010286 34 MSCFileSystem(const char* name);
esemi00 0:cfcd0d010286 35 virtual int disk_initialize();
esemi00 0:cfcd0d010286 36 virtual int disk_write(const char *buffer, int block_number);
esemi00 0:cfcd0d010286 37 virtual int disk_read(char *buffer, int block_number);
esemi00 0:cfcd0d010286 38 virtual int disk_status();
esemi00 0:cfcd0d010286 39 virtual int disk_sync();
esemi00 0:cfcd0d010286 40 virtual int disk_sectors();
esemi00 0:cfcd0d010286 41
esemi00 0:cfcd0d010286 42 protected:
esemi00 0:cfcd0d010286 43
esemi00 0:cfcd0d010286 44 int initialise_msc();
esemi00 0:cfcd0d010286 45 uint32_t _numBlks;
esemi00 0:cfcd0d010286 46 uint32_t _blkSize;
esemi00 0:cfcd0d010286 47 };
esemi00 0:cfcd0d010286 48
esemi00 0:cfcd0d010286 49 #endif