Dependencies:   mbed

Committer:
DaveStyles
Date:
Wed Nov 25 22:37:12 2009 +0000
Revision:
0:b545e012d041

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
DaveStyles 0:b545e012d041 1 /* mbed Microcontroller Library - SDFileSystem
DaveStyles 0:b545e012d041 2 * Copyright (c) 2008-2009, sford
DaveStyles 0:b545e012d041 3 */
DaveStyles 0:b545e012d041 4
DaveStyles 0:b545e012d041 5 #ifndef SDFILESYSTEM_H
DaveStyles 0:b545e012d041 6 #define SDFILESYSTEM_H
DaveStyles 0:b545e012d041 7
DaveStyles 0:b545e012d041 8 #include "mbed.h"
DaveStyles 0:b545e012d041 9 #include "FATFileSystem.h"
DaveStyles 0:b545e012d041 10
DaveStyles 0:b545e012d041 11 /* Class: SDFileSystem
DaveStyles 0:b545e012d041 12 * Access the filesystem on an SD Card using SPI
DaveStyles 0:b545e012d041 13 *
DaveStyles 0:b545e012d041 14 * Example:
DaveStyles 0:b545e012d041 15 * > SDFileSystem sd(p5, p6, p7, p12, "sd");
DaveStyles 0:b545e012d041 16 * >
DaveStyles 0:b545e012d041 17 * > int main() {
DaveStyles 0:b545e012d041 18 * > FILE *fp = fopen("/sd/myfile.txt", "w");
DaveStyles 0:b545e012d041 19 * > fprintf(fp, "Hello World!\n");
DaveStyles 0:b545e012d041 20 * > fclose(fp);
DaveStyles 0:b545e012d041 21 * > }
DaveStyles 0:b545e012d041 22 */
DaveStyles 0:b545e012d041 23 class SDFileSystem : public FATFileSystem {
DaveStyles 0:b545e012d041 24 public:
DaveStyles 0:b545e012d041 25
DaveStyles 0:b545e012d041 26 /* Constructor: SDFileSystem
DaveStyles 0:b545e012d041 27 * Create the File System for accessing an SD Card using SPI
DaveStyles 0:b545e012d041 28 *
DaveStyles 0:b545e012d041 29 * Variables:
DaveStyles 0:b545e012d041 30 * mosi - SPI mosi pin connected to SD Card
DaveStyles 0:b545e012d041 31 * miso - SPI miso pin conencted to SD Card
DaveStyles 0:b545e012d041 32 * sclk - SPI sclk pin connected to SD Card
DaveStyles 0:b545e012d041 33 * cs - DigitalOut pin used as SD Card chip select
DaveStyles 0:b545e012d041 34 * name - The name used to access the filesystem
DaveStyles 0:b545e012d041 35 */
DaveStyles 0:b545e012d041 36 SDFileSystem(PinName mosi, PinName miso, PinName sclk, PinName cs, const char* name);
DaveStyles 0:b545e012d041 37 virtual int disk_initialize();
DaveStyles 0:b545e012d041 38 virtual int disk_write(const char *buffer, int block_number);
DaveStyles 0:b545e012d041 39 virtual int disk_read(char *buffer, int block_number);
DaveStyles 0:b545e012d041 40 virtual int disk_status();
DaveStyles 0:b545e012d041 41 virtual int disk_sync();
DaveStyles 0:b545e012d041 42 virtual int disk_sectors();
DaveStyles 0:b545e012d041 43
DaveStyles 0:b545e012d041 44 protected:
DaveStyles 0:b545e012d041 45
DaveStyles 0:b545e012d041 46 int _cmd(int cmd, int arg);
DaveStyles 0:b545e012d041 47 int _read(char *buffer, int length);
DaveStyles 0:b545e012d041 48 int _write(const char *buffer, int length);
DaveStyles 0:b545e012d041 49 int _sd_sectors();
DaveStyles 0:b545e012d041 50 int _sectors;
DaveStyles 0:b545e012d041 51
DaveStyles 0:b545e012d041 52 SPI _spi;
DaveStyles 0:b545e012d041 53 DigitalOut _cs;
DaveStyles 0:b545e012d041 54 };
DaveStyles 0:b545e012d041 55
DaveStyles 0:b545e012d041 56 #endif