updated RPC command to match javascripting language

Dependencies:   EthernetInterface HTTPServerExample mbed-rpc mbed-rtos mbed

Fork of EthHTTPServer by Henry Leinen

Committer:
leihen
Date:
Sat Aug 17 17:00:35 2013 +0000
Revision:
5:c5c2f7026638
Parent:
1:6cbd17e628f1
Child:
6:fde802d0f163
Added RPC functionality to sample application.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
leihen 0:28a67716dfec 1 #include "mbed.h"
leihen 0:28a67716dfec 2 #include "HTTPServer.h"
leihen 0:28a67716dfec 3 #include "FsHandler.h"
leihen 0:28a67716dfec 4 #include "LocalFileSystem.h"
leihen 5:c5c2f7026638 5 #include "RpcHandler.h"
leihen 5:c5c2f7026638 6 #include "mbed_rpc.h"
leihen 0:28a67716dfec 7
leihen 1:6cbd17e628f1 8 #define ALTERNATIVE
leihen 1:6cbd17e628f1 9 //#undef ALTERNATIVE
leihen 0:28a67716dfec 10
leihen 1:6cbd17e628f1 11 // Use LED1 to indicate that the main loop is still executing
leihen 0:28a67716dfec 12 DigitalOut myled(LED1);
leihen 1:6cbd17e628f1 13 // Use the serial connection 'pc' to dump debug information
leihen 0:28a67716dfec 14 Serial pc(USBTX, USBRX, "pc");
leihen 1:6cbd17e628f1 15 // Instantiate a HTTPServer to handle incoming requests
leihen 0:28a67716dfec 16 HTTPServer svr;
leihen 1:6cbd17e628f1 17 // Instantiate a local file system handler named 'local' which will be used later to access files on the mbed.
leihen 1:6cbd17e628f1 18 LocalFileSystem local("local");
leihen 0:28a67716dfec 19
leihen 5:c5c2f7026638 20
leihen 1:6cbd17e628f1 21 #ifdef ALTERNATIVE
leihen 1:6cbd17e628f1 22 // Create the EthernetInterface. This is optional, please see the documentation of HTTP Server's start method.
leihen 1:6cbd17e628f1 23 EthernetInterface eth;
leihen 1:6cbd17e628f1 24 #endif
leihen 1:6cbd17e628f1 25
leihen 0:28a67716dfec 26
leihen 0:28a67716dfec 27 int main() {
leihen 0:28a67716dfec 28
leihen 0:28a67716dfec 29 pc.baud(460800);
leihen 5:c5c2f7026638 30 RPC::add_rpc_class<RpcDigitalOut>();
leihen 0:28a67716dfec 31 HTTPFsRequestHandler::mount("/local/", "/");
leihen 0:28a67716dfec 32 svr.addHandler<HTTPFsRequestHandler>("/");
leihen 5:c5c2f7026638 33 svr.addHandler<HTTPRpcRequestHandler>("/RPC");
leihen 5:c5c2f7026638 34
leihen 1:6cbd17e628f1 35 #ifdef ALTERNATIVE
leihen 1:6cbd17e628f1 36 // Initialize the EthernetInterface and initiate a connection using DHCP.
leihen 1:6cbd17e628f1 37 eth.init();
leihen 1:6cbd17e628f1 38 eth.connect();
leihen 1:6cbd17e628f1 39
leihen 1:6cbd17e628f1 40 if (!svr.start(80, &eth)) {
leihen 1:6cbd17e628f1 41 #else
leihen 0:28a67716dfec 42 if (!svr.start()) {
leihen 1:6cbd17e628f1 43 #endif
leihen 0:28a67716dfec 44 error("Server not starting !");
leihen 0:28a67716dfec 45 exit(0);
leihen 0:28a67716dfec 46 }
leihen 0:28a67716dfec 47
leihen 0:28a67716dfec 48 while(1) {
leihen 0:28a67716dfec 49 svr.poll();
leihen 0:28a67716dfec 50 myled = 1;
leihen 0:28a67716dfec 51 wait(0.2);
leihen 0:28a67716dfec 52 myled = 0;
leihen 0:28a67716dfec 53 wait(0.2);
leihen 0:28a67716dfec 54 }
leihen 0:28a67716dfec 55 }