HTTP RPC Server mit vordefinierten Objekten
Dependencies: EthernetInterface HttpServer mbed-rpc mbed-rtos mbed
main.cpp@1:efd4f8b15e66, 2015-04-02 (annotated)
- Committer:
- stefan1691
- Date:
- Thu Apr 02 07:25:02 2015 +0000
- Revision:
- 1:efd4f8b15e66
- Parent:
- 0:ad2568075748
Web-APP ergaenzt
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
stefan1691 | 0:ad2568075748 | 1 | #include "mbed.h" |
stefan1691 | 0:ad2568075748 | 2 | /** HTTP RPC Server mit vordefinierten Objekten |
stefan1691 | 0:ad2568075748 | 3 | */ |
stefan1691 | 0:ad2568075748 | 4 | #include "rtos.h" |
stefan1691 | 0:ad2568075748 | 5 | #include "EthernetInterface.h" |
stefan1691 | 0:ad2568075748 | 6 | #include "HTTPServer.h" |
stefan1691 | 0:ad2568075748 | 7 | #include "mbed_rpc.h" |
stefan1691 | 0:ad2568075748 | 8 | |
stefan1691 | 0:ad2568075748 | 9 | EthernetInterface eth; |
stefan1691 | 0:ad2568075748 | 10 | |
stefan1691 | 0:ad2568075748 | 11 | int main() |
stefan1691 | 0:ad2568075748 | 12 | { |
stefan1691 | 0:ad2568075748 | 13 | printf("RPC HTTP Server\n"); |
stefan1691 | 0:ad2568075748 | 14 | eth.init(); //Use DHCP |
stefan1691 | 0:ad2568075748 | 15 | eth.connect(); |
stefan1691 | 0:ad2568075748 | 16 | printf("IP Address is %s\n\r", eth.getIPAddress()); |
stefan1691 | 0:ad2568075748 | 17 | |
stefan1691 | 0:ad2568075748 | 18 | // Klassen |
stefan1691 | 0:ad2568075748 | 19 | RPC::add_rpc_class<RpcDigitalOut>(); |
stefan1691 | 0:ad2568075748 | 20 | RPC::add_rpc_class<RpcDigitalIn>(); |
stefan1691 | 0:ad2568075748 | 21 | //RPC::add_rpc_class<RpcAnalogIn>(); // bringt Link Fehler |
stefan1691 | 0:ad2568075748 | 22 | RPC::add_rpc_class<RpcPwmOut>(); |
stefan1691 | 0:ad2568075748 | 23 | |
stefan1691 | 0:ad2568075748 | 24 | // Objekte |
stefan1691 | 0:ad2568075748 | 25 | RPC::construct<RpcDigitalOut, PinName, const char*>(D10, "led1"); |
stefan1691 | 0:ad2568075748 | 26 | RPC::construct<RpcDigitalOut, PinName, const char*>(D11, "led2"); |
stefan1691 | 0:ad2568075748 | 27 | RPC::construct<RpcPwmOut, PinName, const char*>(D12, "led3"); |
stefan1691 | 0:ad2568075748 | 28 | RPC::construct<RpcDigitalIn, PinName, const char*>(A2, "b1"); |
stefan1691 | 0:ad2568075748 | 29 | //RPC::construct<RpcAnalogIn, PinName, const char*>(A0, "light"); |
stefan1691 | 0:ad2568075748 | 30 | |
stefan1691 | 0:ad2568075748 | 31 | // Handler |
stefan1691 | 0:ad2568075748 | 32 | HTTPServerAddHandler<RPCHandler>("/rpc"); |
stefan1691 | 0:ad2568075748 | 33 | |
stefan1691 | 0:ad2568075748 | 34 | // Start HTTP Server auf Port 80 |
stefan1691 | 0:ad2568075748 | 35 | printf( "Starte Server\n" ); |
stefan1691 | 0:ad2568075748 | 36 | HTTPServerStart(80); |
stefan1691 | 0:ad2568075748 | 37 | } |