Donatien Garnier
/
NetHttpServerExample
Networking stack: HTTP Server example
HttpServerExample.cpp@1:16ef7062abc9, 2010-05-25 (annotated)
- Committer:
- donatien
- Date:
- Tue May 25 09:19:59 2010 +0000
- Revision:
- 1:16ef7062abc9
- Parent:
- 0:b0f550cf7618
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
donatien | 0:b0f550cf7618 | 1 | #include "mbed.h" |
donatien | 0:b0f550cf7618 | 2 | #include "EthernetNetIf.h" |
donatien | 0:b0f550cf7618 | 3 | #include "HttpServer.h" |
donatien | 0:b0f550cf7618 | 4 | |
donatien | 0:b0f550cf7618 | 5 | DigitalOut led1(LED1, "led1"); |
donatien | 0:b0f550cf7618 | 6 | DigitalOut led2(LED2, "led2"); |
donatien | 0:b0f550cf7618 | 7 | DigitalOut led3(LED3, "led3"); |
donatien | 0:b0f550cf7618 | 8 | DigitalOut led4(LED4, "led4"); |
donatien | 0:b0f550cf7618 | 9 | |
donatien | 0:b0f550cf7618 | 10 | LocalFileSystem fs("webfs"); |
donatien | 0:b0f550cf7618 | 11 | |
donatien | 0:b0f550cf7618 | 12 | EthernetNetIf eth; |
donatien | 0:b0f550cf7618 | 13 | HttpServer svr; |
donatien | 0:b0f550cf7618 | 14 | |
donatien | 0:b0f550cf7618 | 15 | int main() { |
donatien | 0:b0f550cf7618 | 16 | Base::add_rpc_class<DigitalOut>(); |
donatien | 0:b0f550cf7618 | 17 | |
donatien | 0:b0f550cf7618 | 18 | printf("\r\nSetting up...\r\n"); |
donatien | 0:b0f550cf7618 | 19 | EthernetErr ethErr = eth.setup(); |
donatien | 0:b0f550cf7618 | 20 | if(ethErr) |
donatien | 0:b0f550cf7618 | 21 | { |
donatien | 0:b0f550cf7618 | 22 | printf("Error %d in setup.\n", ethErr); |
donatien | 0:b0f550cf7618 | 23 | return -1; |
donatien | 0:b0f550cf7618 | 24 | } |
donatien | 0:b0f550cf7618 | 25 | printf("\r\nSetup OK\r\n"); |
donatien | 0:b0f550cf7618 | 26 | |
donatien | 0:b0f550cf7618 | 27 | svr.addHandler<SimpleHandler>("/hello"); |
donatien | 0:b0f550cf7618 | 28 | svr.addHandler<RpcHandler>("/rpc"); |
donatien | 0:b0f550cf7618 | 29 | svr.addHandler<FSHandler>(""); //Default handler |
donatien | 0:b0f550cf7618 | 30 | //Example : Access to mbed.htm : http://a.b.c.d/webfs/mbed.htm |
donatien | 0:b0f550cf7618 | 31 | |
donatien | 0:b0f550cf7618 | 32 | svr.bind(80); |
donatien | 0:b0f550cf7618 | 33 | |
donatien | 0:b0f550cf7618 | 34 | printf("\r\nListening...\r\n"); |
donatien | 0:b0f550cf7618 | 35 | |
donatien | 0:b0f550cf7618 | 36 | Timer tm; |
donatien | 0:b0f550cf7618 | 37 | tm.start(); |
donatien | 0:b0f550cf7618 | 38 | //Listen indefinitely |
donatien | 0:b0f550cf7618 | 39 | while(true) |
donatien | 0:b0f550cf7618 | 40 | { |
donatien | 0:b0f550cf7618 | 41 | Net::poll(); |
donatien | 0:b0f550cf7618 | 42 | if(tm.read()>.5) |
donatien | 0:b0f550cf7618 | 43 | { |
donatien | 0:b0f550cf7618 | 44 | led1=!led1; //Show that we are alive |
donatien | 0:b0f550cf7618 | 45 | tm.start(); |
donatien | 0:b0f550cf7618 | 46 | } |
donatien | 0:b0f550cf7618 | 47 | } |
donatien | 0:b0f550cf7618 | 48 | |
donatien | 0:b0f550cf7618 | 49 | return 0; |
donatien | 0:b0f550cf7618 | 50 | |
donatien | 0:b0f550cf7618 | 51 | } |