Minimalistischer Remote Procedure Call (RPC) HTTP Server V2

Dependencies:   EthernetInterface HttpServer OLEDDisplay mbed-rtos mbed

Fork of RPCHTTPServerSimple by smd.iotkit2.ch

Committer:
stefan1691
Date:
Wed Apr 08 12:31:41 2015 +0000
Revision:
11:43e28c85fd75
Parent:
10:f92d1e679fea
Child:
12:e55991dab543
Korrektur AnalogIn laut . https://developer.mbed.org/questions/3897/AnalogIn-not-working-in-rpc/

Who changed what in which revision?

UserRevisionLine numberNew contents of line
stefan1691 9:66ff9ae5572e 1 /** Minimalistischer RCP HTTP Server
stefan1691 9:66ff9ae5572e 2 */
yueee_yt 0:050a5d4ffd55 3 #include "mbed.h"
yueee_yt 0:050a5d4ffd55 4 #include "rtos.h"
yueee_yt 0:050a5d4ffd55 5 #include "EthernetInterface.h"
yueee_yt 0:050a5d4ffd55 6 #include "HTTPServer.h"
yueee_yt 3:5758cfefe980 7 #include "mbed_rpc.h"
yueee_yt 5:bfa9878aa274 8
yueee_yt 0:050a5d4ffd55 9 EthernetInterface eth;
yueee_yt 3:5758cfefe980 10
yueee_yt 0:050a5d4ffd55 11 int main()
yueee_yt 0:050a5d4ffd55 12 {
stefan1691 9:66ff9ae5572e 13 printf("RPC HTTP Server\n");
stefan1691 9:66ff9ae5572e 14 eth.init(); //Use DHCP
stefan1691 9:66ff9ae5572e 15 eth.connect();
stefan1691 9:66ff9ae5572e 16 printf("IP Address is %s\n\r", eth.getIPAddress());
stefan1691 9:66ff9ae5572e 17
stefan1691 9:66ff9ae5572e 18 // Klassen
yueee_yt 3:5758cfefe980 19 RPC::add_rpc_class<RpcDigitalOut>();
stefan1691 10:f92d1e679fea 20 RPC::add_rpc_class<RpcDigitalIn>();
stefan1691 10:f92d1e679fea 21 //RPC::add_rpc_class<RpcAnalogIn>(); // bringt Link Fehler
stefan1691 10:f92d1e679fea 22 RPC::add_rpc_class<RpcPwmOut>();
marcel1691 7:8a319a112fba 23
stefan1691 9:66ff9ae5572e 24 // Objekte
stefan1691 9:66ff9ae5572e 25 RPC::construct<RpcDigitalOut, PinName, const char*>(D10, "led1");
stefan1691 9:66ff9ae5572e 26 RPC::construct<RpcDigitalOut, PinName, const char*>(D11, "led2");
stefan1691 10:f92d1e679fea 27 RPC::construct<RpcPwmOut, PinName, const char*>(D12, "led3");
stefan1691 11:43e28c85fd75 28 RPC::construct<RpcAnalogIn, PinName, const char*>(A0, "poti");
stefan1691 11:43e28c85fd75 29 RPC::construct<RpcAnalogIn, PinName, const char*>(A1, "light");
stefan1691 11:43e28c85fd75 30 RPC::construct<RpcDigitalIn, PinName, const char*>(A2, "b1");
yueee_yt 3:5758cfefe980 31
stefan1691 9:66ff9ae5572e 32 // Handler
yueee_yt 3:5758cfefe980 33 HTTPServerAddHandler<RPCHandler>("/rpc");
stefan1691 9:66ff9ae5572e 34
stefan1691 9:66ff9ae5572e 35 // Start HTTP Server auf Port 80
stefan1691 9:66ff9ae5572e 36 printf( "Starte Server\n" );
yueee_yt 0:050a5d4ffd55 37 HTTPServerStart(80);
yueee_yt 0:050a5d4ffd55 38 }
yueee_yt 0:050a5d4ffd55 39