Example of HTTPServer with additional features: * SNTPClient, DST rules * Link status indication * Local or SDCard-based WebServer * RPC-able class * Static and Dynamic HTML page

Dependencies:   mbed

Committer:
iva2k
Date:
Tue Jan 12 07:41:55 2010 +0000
Revision:
2:360fda42fefd
Parent:
0:886e4b3119ad

        

Who changed what in which revision?

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