MSC_20200408_

Committer:
MPPT51
Date:
Wed Apr 08 01:17:45 2020 +0000
Revision:
0:f19563caba14
20200408_MSC_kikkawa

Who changed what in which revision?

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