☆board OrageでEthernetのhttp serverを使用する方法のサンプルです

Dependencies:   EthernetNetIf TextLCD mbed HTTPServer

Committer:
yueee_yt
Date:
Sun May 08 09:03:08 2011 +0000
Revision:
0:7dcfd77d344d

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
yueee_yt 0:7dcfd77d344d 1 #include "mbed.h"
yueee_yt 0:7dcfd77d344d 2 #include "TextLCD.h"
yueee_yt 0:7dcfd77d344d 3 #include "EthernetNetIf.h"
yueee_yt 0:7dcfd77d344d 4 #include "HTTPServer.h"
yueee_yt 0:7dcfd77d344d 5
yueee_yt 0:7dcfd77d344d 6 DigitalOut led1(LED1,"led1");
yueee_yt 0:7dcfd77d344d 7 DigitalOut led2(LED2,"led2");
yueee_yt 0:7dcfd77d344d 8 DigitalOut led3(LED3,"led3");
yueee_yt 0:7dcfd77d344d 9 DigitalOut led4(LED4,"led4");
yueee_yt 0:7dcfd77d344d 10
yueee_yt 0:7dcfd77d344d 11 TextLCD lcd(p24, p26, p27, p28, p29, p30);
yueee_yt 0:7dcfd77d344d 12
yueee_yt 0:7dcfd77d344d 13 #if 1
yueee_yt 0:7dcfd77d344d 14 /*
yueee_yt 0:7dcfd77d344d 15 * Use DHCP
yueee_yt 0:7dcfd77d344d 16 */
yueee_yt 0:7dcfd77d344d 17 EthernetNetIf ethif;
yueee_yt 0:7dcfd77d344d 18 #else
yueee_yt 0:7dcfd77d344d 19 /*
yueee_yt 0:7dcfd77d344d 20 * Use "static IP address" (Parameters:IP, Subnet mask, Gateway, DNS)
yueee_yt 0:7dcfd77d344d 21 */
yueee_yt 0:7dcfd77d344d 22 EthernetNetIf ethif(IpAddr(xxx,xxx,xxx,xxx), IpAddr(xxx,xxx,xxx,xxx), IpAddr(xxx,xxx,xxx,xxx), IpAddr(xxx,xxx,xxx,xxx));
yueee_yt 0:7dcfd77d344d 23 #endif
yueee_yt 0:7dcfd77d344d 24
yueee_yt 0:7dcfd77d344d 25 HTTPServer server;
yueee_yt 0:7dcfd77d344d 26 LocalFileSystem local("local");
yueee_yt 0:7dcfd77d344d 27
yueee_yt 0:7dcfd77d344d 28 int main(void) {
yueee_yt 0:7dcfd77d344d 29
yueee_yt 0:7dcfd77d344d 30 Base::add_rpc_class<DigitalOut>();
yueee_yt 0:7dcfd77d344d 31
yueee_yt 0:7dcfd77d344d 32 lcd.cls();
yueee_yt 0:7dcfd77d344d 33 lcd.locate(0,0);
yueee_yt 0:7dcfd77d344d 34 lcd.printf("Program init.. ");
yueee_yt 0:7dcfd77d344d 35
yueee_yt 0:7dcfd77d344d 36 if (ethif.setup()) {
yueee_yt 0:7dcfd77d344d 37 error("Ethernet setup failed.");
yueee_yt 0:7dcfd77d344d 38 return 1;
yueee_yt 0:7dcfd77d344d 39 }
yueee_yt 0:7dcfd77d344d 40 IpAddr ethIp=ethif.getIp();
yueee_yt 0:7dcfd77d344d 41
yueee_yt 0:7dcfd77d344d 42 lcd.locate(0,1);
yueee_yt 0:7dcfd77d344d 43 lcd.printf("%d.%d.%d.%d", ethIp[0], ethIp[1], ethIp[2], ethIp[3]);
yueee_yt 0:7dcfd77d344d 44 led1=1;
yueee_yt 0:7dcfd77d344d 45 wait(1);
yueee_yt 0:7dcfd77d344d 46 server.addHandler<SimpleHandler>("/hello");
yueee_yt 0:7dcfd77d344d 47 server.addHandler<RPCHandler>("/rpc");
yueee_yt 0:7dcfd77d344d 48 FSHandler::mount("/local", "/");
yueee_yt 0:7dcfd77d344d 49 server.addHandler<FSHandler>("/");
yueee_yt 0:7dcfd77d344d 50 server.bind(80);
yueee_yt 0:7dcfd77d344d 51 while (1) {
yueee_yt 0:7dcfd77d344d 52 Net::poll();
yueee_yt 0:7dcfd77d344d 53 }
yueee_yt 0:7dcfd77d344d 54 return 0;
yueee_yt 0:7dcfd77d344d 55 }