Dependencies:   mbed

Committer:
Markus_Paar
Date:
Mon Sep 19 10:25:22 2011 +0000
Revision:
0:48870d877970

        

Who changed what in which revision?

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