ソースの整理中ですが、利用はできます。

Dependencies:   EthernetInterface HttpServer TextLCD mbed-rpc mbed-rtos mbed Socket lwip-eth lwip-sys lwip

Committer:
yueee_yt
Date:
Wed Mar 12 04:39:15 2014 +0000
Revision:
2:14b689a85306
Parent:
0:7766f6712673
bug fix

Who changed what in which revision?

UserRevisionLine numberNew contents of line
yueee_yt 0:7766f6712673 1 //#define DNS_SERVER_ADDRESS(ipaddr) (ip4_addr_set_u32(ipaddr, ipaddr_addr("208.67.222.222"))) /* resolver1.opendns.com */
yueee_yt 0:7766f6712673 2 #include "mbed.h"
yueee_yt 0:7766f6712673 3 #include "rtos.h"
yueee_yt 0:7766f6712673 4 #include "EthernetInterface.h"
yueee_yt 0:7766f6712673 5 #include "HTTPServer.h"
yueee_yt 0:7766f6712673 6 #include "mbed_rpc.h"
yueee_yt 0:7766f6712673 7 #include "TextLCD.h"
yueee_yt 0:7766f6712673 8
yueee_yt 0:7766f6712673 9 EthernetInterface eth;
yueee_yt 0:7766f6712673 10 LocalFileSystem local("local");
yueee_yt 0:7766f6712673 11 DigitalOut led4(LED4);
yueee_yt 0:7766f6712673 12 //DigitalOut led1(LED1);
yueee_yt 0:7766f6712673 13 TextLCD lcd(p24, p26, p27, p28, p29, p30);
yueee_yt 0:7766f6712673 14
yueee_yt 0:7766f6712673 15 void LcdWrite(Arguments* arg, Reply* r);void LcdWrite(Arguments* arg, Reply* r);
yueee_yt 0:7766f6712673 16 void aliveState(void const *args)
yueee_yt 0:7766f6712673 17 {
yueee_yt 0:7766f6712673 18 while (true) {
yueee_yt 0:7766f6712673 19 led4 = !led4;
yueee_yt 0:7766f6712673 20 Thread::wait(1000);
yueee_yt 0:7766f6712673 21 }
yueee_yt 0:7766f6712673 22 }
yueee_yt 0:7766f6712673 23 int main()
yueee_yt 0:7766f6712673 24 {
yueee_yt 0:7766f6712673 25 printf("********* PROGRAM START ***********\r\n");
yueee_yt 0:7766f6712673 26 Thread thread(aliveState);
yueee_yt 0:7766f6712673 27 lcd.cls();
yueee_yt 0:7766f6712673 28 lcd.locate(0,0);
yueee_yt 0:7766f6712673 29
yueee_yt 0:7766f6712673 30 printf("********* RPC Initialize ***********\r\n");
yueee_yt 0:7766f6712673 31 RPC::add_rpc_class<RpcDigitalOut>();
yueee_yt 0:7766f6712673 32 RPC::construct<RpcDigitalOut, PinName, const char*>(LED1, "led1");
yueee_yt 0:7766f6712673 33 RPC::construct<RpcDigitalOut, PinName, const char*>(LED2, "led2");
yueee_yt 0:7766f6712673 34 RPC::construct<RpcDigitalOut, PinName, const char*>(LED3, "led3");
yueee_yt 0:7766f6712673 35 RPCFunction rpcFunc(LcdWrite, "LcdWrite");
yueee_yt 0:7766f6712673 36
yueee_yt 0:7766f6712673 37 printf("EthernetInterface Setting up...\r\n");
yueee_yt 0:7766f6712673 38 if(eth.init()!=0) { //for DHCP Server
yueee_yt 0:7766f6712673 39 // if(eth.init("133.11.168.23","255.255.255.0","133.11.168.1")!=0) { //for Static IP Address
yueee_yt 0:7766f6712673 40 printf("EthernetInterface Initialize Error \r\n");
yueee_yt 0:7766f6712673 41 return -1;
yueee_yt 0:7766f6712673 42 }
yueee_yt 0:7766f6712673 43 if(eth.connect()!=0) {
yueee_yt 0:7766f6712673 44 printf("EthernetInterface Connect Error \r\n");
yueee_yt 0:7766f6712673 45 return -1;
yueee_yt 0:7766f6712673 46 }
yueee_yt 0:7766f6712673 47 printf("IP Address is %s\r\n", eth.getIPAddress());
yueee_yt 0:7766f6712673 48 printf("NetMask is %s\r\n", eth.getNetworkMask());
yueee_yt 0:7766f6712673 49 printf("Gateway Address is %s\r\n", eth.getGateway());
yueee_yt 0:7766f6712673 50 printf("Ethernet Setup OK\r\n");
yueee_yt 0:7766f6712673 51
yueee_yt 0:7766f6712673 52 FSHandler::mount("/local","/");
yueee_yt 0:7766f6712673 53
yueee_yt 0:7766f6712673 54 lcd.locate(0,0);
yueee_yt 0:7766f6712673 55 lcd.printf("%s",eth.getIPAddress());
yueee_yt 0:7766f6712673 56 HTTPServerStart(80);
yueee_yt 0:7766f6712673 57 }
yueee_yt 0:7766f6712673 58
yueee_yt 0:7766f6712673 59 void LcdWrite(Arguments* arg, Reply* r) //RPC Call
yueee_yt 0:7766f6712673 60 {
yueee_yt 0:7766f6712673 61 lcd.locate(0,1);
yueee_yt 0:7766f6712673 62 lcd.printf("%s",arg->argv[0]);
yueee_yt 0:7766f6712673 63 }
yueee_yt 0:7766f6712673 64