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: EthernetNetIf HTTPServer SDFileSystem mbed
Fork of webserver by
main.cpp@1:73dceccbf2d8, 2013-02-17 (annotated)
- Committer:
- ajoliver
- Date:
- Sun Feb 17 08:56:35 2013 +0000
- Revision:
- 1:73dceccbf2d8
- Parent:
- 0:275cd7ae0902
- Child:
- 2:1b0698a65c62
version 1.0
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| nobuki | 0:275cd7ae0902 | 1 | #include "mbed.h" |
| ajoliver | 1:73dceccbf2d8 | 2 | #include "SDFileSystem.h" |
| nobuki | 0:275cd7ae0902 | 3 | #include "EthernetNetIf.h" |
| nobuki | 0:275cd7ae0902 | 4 | #include "HTTPServer.h" |
| nobuki | 0:275cd7ae0902 | 5 | |
| ajoliver | 1:73dceccbf2d8 | 6 | EthernetNetIf ethif( IpAddr(10,0,0,200), // IP |
| nobuki | 0:275cd7ae0902 | 7 | IpAddr(255,255,255,0), // Subnet mask |
| ajoliver | 1:73dceccbf2d8 | 8 | IpAddr(10,0,0,1), // Gateway |
| ajoliver | 1:73dceccbf2d8 | 9 | IpAddr(8,8,8,8) ); // DNS |
| nobuki | 0:275cd7ae0902 | 10 | HTTPServer server; |
| ajoliver | 1:73dceccbf2d8 | 11 | SDFileSystem sd(p5, p6, p7, p8, "sd"); // Define local file mount point |
| nobuki | 0:275cd7ae0902 | 12 | DigitalOut led1(LED1); // for alive check |
| nobuki | 0:275cd7ae0902 | 13 | |
| ajoliver | 1:73dceccbf2d8 | 14 | PwmOut pwm(LED4); // messing about with the pwm |
| ajoliver | 1:73dceccbf2d8 | 15 | |
| nobuki | 0:275cd7ae0902 | 16 | int main(void) |
| nobuki | 0:275cd7ae0902 | 17 | { |
| ajoliver | 1:73dceccbf2d8 | 18 | pwm = 0.5; |
| ajoliver | 1:73dceccbf2d8 | 19 | |
| nobuki | 0:275cd7ae0902 | 20 | // EthernetNetIf setup |
| ajoliver | 1:73dceccbf2d8 | 21 | if( ethif.setup() ) { |
| nobuki | 0:275cd7ae0902 | 22 | return 1; |
| nobuki | 0:275cd7ae0902 | 23 | } |
| nobuki | 0:275cd7ae0902 | 24 | |
| nobuki | 0:275cd7ae0902 | 25 | // Mount local file path on web root path |
| ajoliver | 1:73dceccbf2d8 | 26 | FSHandler::mount("/sd", "/"); |
| nobuki | 0:275cd7ae0902 | 27 | // Set web root path handler |
| nobuki | 0:275cd7ae0902 | 28 | server.addHandler<FSHandler>("/"); |
| ajoliver | 1:73dceccbf2d8 | 29 | server.addHandler<RPCHandler>("/rpc"); |
| ajoliver | 1:73dceccbf2d8 | 30 | |
| nobuki | 0:275cd7ae0902 | 31 | // Set http port |
| nobuki | 0:275cd7ae0902 | 32 | server.bind(80); |
| nobuki | 0:275cd7ae0902 | 33 | |
| nobuki | 0:275cd7ae0902 | 34 | Timer tm; |
| nobuki | 0:275cd7ae0902 | 35 | tm.start(); |
| ajoliver | 1:73dceccbf2d8 | 36 | while(1) { |
| nobuki | 0:275cd7ae0902 | 37 | Net::poll(); |
| ajoliver | 1:73dceccbf2d8 | 38 | if( 1.0 < tm.read() ) { |
| nobuki | 0:275cd7ae0902 | 39 | led1 = !led1; // high->low, low->high |
| nobuki | 0:275cd7ae0902 | 40 | tm.start(); |
| nobuki | 0:275cd7ae0902 | 41 | } |
| nobuki | 0:275cd7ae0902 | 42 | } |
| nobuki | 0:275cd7ae0902 | 43 | } |
