![](/media/cache/group/ep_srxDLMd.webp.50x50_q85.jpg)
8.1 Kombiniert das Übung 6.1 Licht bei Dämmerung einschalten mit RPC Variable um die Sensordaten via Client abzufragen.
Dependencies: EthernetInterface HttpServer mbed-rpc mbed-rtos mbed
Fork of 08-01-Uebung by
Diff: main.cpp
- Revision:
- 12:9281320e8687
- Parent:
- 11:4f5efa32051c
- Child:
- 13:9ac1a340866e
--- a/main.cpp Wed Mar 11 19:11:18 2015 +0000 +++ b/main.cpp Sat Mar 21 09:56:42 2015 +0000 @@ -1,25 +1,23 @@ -/** Minimalistischer RCP HTTP Server +/** 8.1 Kombiniert das Übung 6.1 Licht bei Dämmerung einschalten + mit RPC Variable um die Sensordaten via Client abzufragen. */ #include "mbed.h" #include "rtos.h" #include "EthernetInterface.h" #include "HTTPServer.h" #include "mbed_rpc.h" -#include "Servo.h" EthernetInterface eth; // Servo + aktuelle Werte -Servo servo1 ( A4 ); -Servo servo2 ( A5 ); -float val1, val2; -Ticker servos; +AnalogIn light( A1 ); +float val1; +Ticker sensors; -// Update Servo Werte -void updateServo() +// Update Sensor Werte +void updateVal() { - servo1 = val1; - servo2 = val2; + val1 = light; } int main() @@ -29,22 +27,10 @@ eth.connect(); printf("IP Address is %s\n\r", eth.getIPAddress()); - servos.attach( &updateServo, 1.0 ); - - // Klassen - RPC::add_rpc_class<RpcDigitalOut>(); - RPC::add_rpc_class<RpcDigitalIn>(); - //RPC::add_rpc_class<RpcAnalogIn>(); // bringt Link Fehler - RPC::add_rpc_class<RpcPwmOut>(); + sensors.attach( &updateVal, 1.0 ); // Objekte - RPC::construct<RpcDigitalOut, PinName, const char*>(D10, "led1"); - RPC::construct<RpcDigitalOut, PinName, const char*>(D11, "led2"); - RPC::construct<RpcPwmOut, PinName, const char*>(D12, "led3"); - RPC::construct<RpcDigitalIn, PinName, const char*>(PTC9, "b1"); - //RPC::construct<RpcAnalogIn, PinName, const char*>(A0, "light"); - RPCVariable<float> rpcVal1( &val1, "servo1" ); - RPCVariable<float> rpcVal2( &val2, "servo2" ); + RPCVariable<float> rpcVal1( &val1, "light" ); // Handler HTTPServerAddHandler<RPCHandler>("/rpc");