Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: HTTPServer WIZnetInterface mbed-rpc DHT mbed-src
main.cpp@0:ca442200bc8a, 2015-07-22 (annotated)
- Committer:
- kaizen
- Date:
- Wed Jul 22 09:41:02 2015 +0000
- Revision:
- 0:ca442200bc8a
- Child:
- 1:cffa64d79a8b
First release
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| kaizen | 0:ca442200bc8a | 1 | #include "mbed.h" |
| kaizen | 0:ca442200bc8a | 2 | #include "EthernetInterface.h" |
| kaizen | 0:ca442200bc8a | 3 | #include "HTTPServer.h" |
| kaizen | 0:ca442200bc8a | 4 | #include "mbed_rpc.h" |
| kaizen | 0:ca442200bc8a | 5 | |
| kaizen | 0:ca442200bc8a | 6 | RpcDigitalOut led1(LED1,"led1"); |
| kaizen | 0:ca442200bc8a | 7 | |
| kaizen | 0:ca442200bc8a | 8 | EthernetInterface eth; |
| kaizen | 0:ca442200bc8a | 9 | HTTPServer svr; |
| kaizen | 0:ca442200bc8a | 10 | |
| kaizen | 0:ca442200bc8a | 11 | int main() { |
| kaizen | 0:ca442200bc8a | 12 | //Turn the LEDs off |
| kaizen | 0:ca442200bc8a | 13 | uint8_t mac_addr[6] = {0x00, 0x08, 0xDC, 0x00, 0x00, 0x00}; |
| kaizen | 0:ca442200bc8a | 14 | led1.write(1); |
| kaizen | 0:ca442200bc8a | 15 | |
| kaizen | 0:ca442200bc8a | 16 | RPC::add_rpc_class<RpcDigitalOut>(); |
| kaizen | 0:ca442200bc8a | 17 | |
| kaizen | 0:ca442200bc8a | 18 | printf("Setting up...\n"); |
| kaizen | 0:ca442200bc8a | 19 | eth.init(mac_addr); |
| kaizen | 0:ca442200bc8a | 20 | int ethErr = eth.connect(); |
| kaizen | 0:ca442200bc8a | 21 | if(ethErr < 0) |
| kaizen | 0:ca442200bc8a | 22 | { |
| kaizen | 0:ca442200bc8a | 23 | printf("Error %d in setup.\n", ethErr); |
| kaizen | 0:ca442200bc8a | 24 | return -1; |
| kaizen | 0:ca442200bc8a | 25 | } |
| kaizen | 0:ca442200bc8a | 26 | |
| kaizen | 0:ca442200bc8a | 27 | svr.addHandler<HTTPRpcRequestHandler>("/rpc"); |
| kaizen | 0:ca442200bc8a | 28 | |
| kaizen | 0:ca442200bc8a | 29 | //attach server to port 80 |
| kaizen | 0:ca442200bc8a | 30 | svr.start(80, ð); |
| kaizen | 0:ca442200bc8a | 31 | |
| kaizen | 0:ca442200bc8a | 32 | printf("Listening...\n"); |
| kaizen | 0:ca442200bc8a | 33 | |
| kaizen | 0:ca442200bc8a | 34 | Timer tm; |
| kaizen | 0:ca442200bc8a | 35 | tm.start(); |
| kaizen | 0:ca442200bc8a | 36 | //Listen indefinitely |
| kaizen | 0:ca442200bc8a | 37 | while(true) |
| kaizen | 0:ca442200bc8a | 38 | { |
| kaizen | 0:ca442200bc8a | 39 | svr.poll(); |
| kaizen | 0:ca442200bc8a | 40 | if(tm.read()>.5) |
| kaizen | 0:ca442200bc8a | 41 | { |
| kaizen | 0:ca442200bc8a | 42 | tm.start(); |
| kaizen | 0:ca442200bc8a | 43 | } |
| kaizen | 0:ca442200bc8a | 44 | } |
| kaizen | 0:ca442200bc8a | 45 | } |