HTTP RPC Server mit vordefinierten Objekten

Dependencies:   EthernetInterface HttpServer mbed-rpc mbed-rtos mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 /** HTTP RPC Server mit vordefinierten Objekten
00003 */
00004 #include "rtos.h"
00005 #include "EthernetInterface.h"
00006 #include "HTTPServer.h"
00007 #include "mbed_rpc.h"
00008 
00009 EthernetInterface eth;
00010 
00011 int main()
00012 {
00013     printf("RPC HTTP Server\n");
00014     eth.init(); //Use DHCP
00015     eth.connect();
00016     printf("IP Address is %s\n\r", eth.getIPAddress());
00017         
00018     // Klassen
00019     RPC::add_rpc_class<RpcDigitalOut>();
00020     RPC::add_rpc_class<RpcDigitalIn>();
00021     //RPC::add_rpc_class<RpcAnalogIn>(); // bringt Link Fehler     
00022     RPC::add_rpc_class<RpcPwmOut>();    
00023     
00024     // Objekte
00025     RPC::construct<RpcDigitalOut, PinName, const char*>(D10, "led1");
00026     RPC::construct<RpcDigitalOut, PinName, const char*>(D11, "led2");
00027     RPC::construct<RpcPwmOut, PinName, const char*>(D12, "led3");
00028     RPC::construct<RpcDigitalIn, PinName, const char*>(A2, "b1");
00029     //RPC::construct<RpcAnalogIn, PinName, const char*>(A0, "light");
00030 
00031     // Handler
00032     HTTPServerAddHandler<RPCHandler>("/rpc");
00033     
00034     // Start HTTP Server auf Port 80
00035     printf( "Starte Server\n" );
00036     HTTPServerStart(80);
00037 }