USB file system over internet

Dependencies:   EthernetNetIfamr FatFileSystemCpp HTTPServer mbed

Fork of MSCUsbHost by Igor Skochinsky

Committer:
joinamruta
Date:
Fri Mar 14 18:28:22 2014 +0000
Revision:
4:1e70ea58f9e3
Parent:
0:e294af8d0e07
Acessing USB file sysytem over internet;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
igorsk 0:e294af8d0e07 1 #include "mbed.h"
joinamruta 4:1e70ea58f9e3 2 #include "EthernetNetIf.h"
joinamruta 4:1e70ea58f9e3 3 #include "HTTPServer.h"
igorsk 0:e294af8d0e07 4 #include "MSCFileSystem.h"
igorsk 0:e294af8d0e07 5
igorsk 0:e294af8d0e07 6 #define FSNAME "msc"
igorsk 0:e294af8d0e07 7 MSCFileSystem msc(FSNAME);
igorsk 0:e294af8d0e07 8
joinamruta 4:1e70ea58f9e3 9 DigitalOut led1(LED1, "led1");
joinamruta 4:1e70ea58f9e3 10 EthernetNetIf eth;
joinamruta 4:1e70ea58f9e3 11 HTTPServer svr;
joinamruta 4:1e70ea58f9e3 12
joinamruta 4:1e70ea58f9e3 13 int main() {
joinamruta 4:1e70ea58f9e3 14
joinamruta 4:1e70ea58f9e3 15
joinamruta 4:1e70ea58f9e3 16 printf("Setting up...\n");
joinamruta 4:1e70ea58f9e3 17 EthernetErr ethErr = eth.setup();
joinamruta 4:1e70ea58f9e3 18 if(ethErr)
joinamruta 4:1e70ea58f9e3 19 {
joinamruta 4:1e70ea58f9e3 20 printf("Error %d in setup.\n", ethErr);
joinamruta 4:1e70ea58f9e3 21 return -1;
joinamruta 4:1e70ea58f9e3 22 }
joinamruta 4:1e70ea58f9e3 23 printf("Setup OK\n");
joinamruta 4:1e70ea58f9e3 24
joinamruta 4:1e70ea58f9e3 25 FSHandler::mount("/msc", "/files"); //Mount /webfs path on /files web path
joinamruta 4:1e70ea58f9e3 26 // FSHandler::mount("/webfs", "/"); //Mount /webfs path on web root path
joinamruta 4:1e70ea58f9e3 27 FSHandler::mount("/msc", "/"); //Mount /webfs path on web root path
joinamruta 4:1e70ea58f9e3 28 FSHandler::mount("/msc", "/"); //Mount /webfs path on web root path
joinamruta 4:1e70ea58f9e3 29
joinamruta 4:1e70ea58f9e3 30 svr.addHandler<SimpleHandler>("/hello");
joinamruta 4:1e70ea58f9e3 31 svr.addHandler<RPCHandler>("/rpc");
joinamruta 4:1e70ea58f9e3 32 svr.addHandler<FSHandler>("/files");
joinamruta 4:1e70ea58f9e3 33 svr.addHandler<FSHandler>("/"); //Default handler
joinamruta 4:1e70ea58f9e3 34 //Example : Access to mbed.htm : http://a.b.c.d/mbed.htm or http://a.b.c.d/files/mbed.htm
joinamruta 4:1e70ea58f9e3 35
joinamruta 4:1e70ea58f9e3 36 svr.bind(80);
joinamruta 4:1e70ea58f9e3 37
joinamruta 4:1e70ea58f9e3 38 printf("Listening...\n");
igorsk 0:e294af8d0e07 39
joinamruta 4:1e70ea58f9e3 40 Timer tm;
joinamruta 4:1e70ea58f9e3 41 tm.start();
joinamruta 4:1e70ea58f9e3 42 //Listen indefinitely
joinamruta 4:1e70ea58f9e3 43 while(true)
joinamruta 4:1e70ea58f9e3 44 {
joinamruta 4:1e70ea58f9e3 45 Net::poll();
joinamruta 4:1e70ea58f9e3 46 if(tm.read()>.5)
igorsk 0:e294af8d0e07 47 {
joinamruta 4:1e70ea58f9e3 48 led1=!led1; //Show that we are alive
joinamruta 4:1e70ea58f9e3 49 tm.start();
igorsk 0:e294af8d0e07 50 }
joinamruta 4:1e70ea58f9e3 51 }
joinamruta 4:1e70ea58f9e3 52
joinamruta 4:1e70ea58f9e3 53 return 0;
joinamruta 4:1e70ea58f9e3 54
joinamruta 4:1e70ea58f9e3 55 }
joinamruta 4:1e70ea58f9e3 56
igorsk 0:e294af8d0e07 57
joinamruta 4:1e70ea58f9e3 58
joinamruta 4:1e70ea58f9e3 59
joinamruta 4:1e70ea58f9e3 60
joinamruta 4:1e70ea58f9e3 61
joinamruta 4:1e70ea58f9e3 62
joinamruta 4:1e70ea58f9e3 63
joinamruta 4:1e70ea58f9e3 64