![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Un serveur web embarqué pour mbed, commande de leds, lecture potentiometre en utilisant rpc.
Dependencies: EthernetNetIf HTTPServer RPCInterface mbed
Fork of HTTPServerExample by
Pour fonctionner correctement, il est nécessaire de placer un fichier nommé index.htm (page html + javascript) dans la mémoire du mbed. Voici le fichier que j'ai utilisé
/media/uploads/LouisReynier/index.htm
Diff: HTTPServerExample.cpp
- Revision:
- 0:0b1369ae8b74
- Child:
- 1:114e347434c1
diff -r 000000000000 -r 0b1369ae8b74 HTTPServerExample.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/HTTPServerExample.cpp Mon Jun 14 10:25:44 2010 +0000 @@ -0,0 +1,55 @@ +#include "mbed.h" +#include "EthernetNetIf.h" +#include "HTTPServer.h" + +DigitalOut led1(LED1, "led1"); +DigitalOut led2(LED2, "led2"); +DigitalOut led3(LED3, "led3"); +DigitalOut led4(LED4, "led4"); + +LocalFileSystem fs("webfs"); + +EthernetNetIf eth; +HTTPServer svr; + +int main() { + Base::add_rpc_class<DigitalOut>(); + + printf("Setting up...n"); + EthernetErr ethErr = eth.setup(); + if(ethErr) + { + printf("Error %d in setup.\n", ethErr); + return -1; + } + printf("Setup OK\n"); + + FSHandler::mount("/webfs", "/files"); //Mount /webfs path on /files web path + FSHandler::mount("/webfs", "/"); //Mount /webfs path on web root path + + svr.addHandler<SimpleHandler>("/hello"); + svr.addHandler<RPCHandler>("/rpc"); + svr.addHandler<FSHandler>("/files"); + svr.addHandler<FSHandler>("/"); //Default handler + //Example : Access to mbed.htm : http://a.b.c.d/mbed.htm or http://a.b.c.d/files/mbed.htm + + svr.bind(80); + + printf("Listening...\n"); + + Timer tm; + tm.start(); + //Listen indefinitely + while(true) + { + Net::poll(); + if(tm.read()>.5) + { + led1=!led1; //Show that we are alive + tm.start(); + } + } + + return 0; + +}