Embedded web server

Dependencies:   EthernetNetIf HTTPServer SDFileSystem mbed

Fork of webserver by Nobuki HIRAMINE

This web server serves pages from an SD card and supports RPC calls for the PWM and GPIO

main.cpp

Committer:
ajoliver
Date:
2013-02-17
Revision:
2:1b0698a65c62
Parent:
1:73dceccbf2d8
Child:
3:15cd22045f66

File content as of revision 2:1b0698a65c62:

#include "mbed.h"
#include "SDFileSystem.h"
#include "EthernetNetIf.h"
#include "HTTPServer.h"

EthernetNetIf ethif( IpAddr(10,0,0,200), // IP
                     IpAddr(255,255,255,0), // Subnet mask
                     IpAddr(10,0,0,1),   // Gateway
                     IpAddr(8,8,8,8) ); // DNS
HTTPServer server;
SDFileSystem sd(p5, p6, p7, p8, "sd"); // Define local file mount point
DigitalOut led1(LED1);  // for alive check

PwmOut pwm4(LED4);  // messing about with the pwm
PwmOut pwm3(LED3);

int main(void)
{
    pwm4.period_ms(10.0f);
    
    pwm4 = 0.5f;
    // pwm3 = 0.01f;
    
    // EthernetNetIf setup
    if( ethif.setup() ) {
        return 1;
    }

    // Mount local file path on web root path
    FSHandler::mount("/sd", "/");
    // Set web root path handler
    server.addHandler<FSHandler>("/");
    server.addHandler<RPCHandler>("/rpc"); 

    // Set http port
    server.bind(80);

    Timer tm;
    tm.start();
    while(1) {
        Net::poll();
        if( 1.0 < tm.read() ) {
            led1 = !led1;   // high->low, low->high
            tm.start();
        }
    }
}