updated RPC command to match javascripting language
Dependencies: EthernetInterface HTTPServerExample mbed-rpc mbed-rtos mbed
Fork of EthHTTPServer by
main.cpp@5:c5c2f7026638, 2013-08-17 (annotated)
- 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?
User | Revision | Line number | New 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, ð)) { |
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 | } |