ソースの整理中ですが、利用はできます。 大きなファイルはできないかもしれません。
Dependencies: EthernetInterface HttpServer TextLCD expatlib mbed-rpc mbed-rtos mbed Socket lwip-eth lwip-sys lwip
Fork of giken9_HTMLServer_Sample by
main.cpp@2:6f25f8327180, 2014-03-12 (annotated)
- Committer:
- yueee_yt
- Date:
- Wed Mar 12 06:30:30 2014 +0000
- Revision:
- 2:6f25f8327180
- Parent:
- 1:bd7da995f192
debug comment
Who changed what in which revision?
User | Revision | Line number | New 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 | 1:bd7da995f192 | 12 | |
yueee_yt | 1:bd7da995f192 | 13 | DigitalOut led1(LED1); |
yueee_yt | 1:bd7da995f192 | 14 | AnalogIn ain(p20); |
yueee_yt | 1:bd7da995f192 | 15 | |
yueee_yt | 0:7766f6712673 | 16 | TextLCD lcd(p24, p26, p27, p28, p29, p30); |
yueee_yt | 0:7766f6712673 | 17 | |
yueee_yt | 1:bd7da995f192 | 18 | float Temp; |
yueee_yt | 1:bd7da995f192 | 19 | |
yueee_yt | 0:7766f6712673 | 20 | void LcdWrite(Arguments* arg, Reply* r);void LcdWrite(Arguments* arg, Reply* r); |
yueee_yt | 0:7766f6712673 | 21 | void aliveState(void const *args) |
yueee_yt | 0:7766f6712673 | 22 | { |
yueee_yt | 0:7766f6712673 | 23 | while (true) { |
yueee_yt | 0:7766f6712673 | 24 | led4 = !led4; |
yueee_yt | 0:7766f6712673 | 25 | Thread::wait(1000); |
yueee_yt | 0:7766f6712673 | 26 | } |
yueee_yt | 0:7766f6712673 | 27 | } |
yueee_yt | 1:bd7da995f192 | 28 | |
yueee_yt | 1:bd7da995f192 | 29 | void measure(void const *n) |
yueee_yt | 1:bd7da995f192 | 30 | { |
yueee_yt | 1:bd7da995f192 | 31 | Temp=ain.read()*3.3*100; |
yueee_yt | 1:bd7da995f192 | 32 | led1=!led1; |
yueee_yt | 1:bd7da995f192 | 33 | } |
yueee_yt | 1:bd7da995f192 | 34 | |
yueee_yt | 0:7766f6712673 | 35 | int main() |
yueee_yt | 0:7766f6712673 | 36 | { |
yueee_yt | 0:7766f6712673 | 37 | printf("********* PROGRAM START ***********\r\n"); |
yueee_yt | 0:7766f6712673 | 38 | Thread thread(aliveState); |
yueee_yt | 1:bd7da995f192 | 39 | |
yueee_yt | 1:bd7da995f192 | 40 | led1=0; |
yueee_yt | 1:bd7da995f192 | 41 | RtosTimer measure_timer(measure); |
yueee_yt | 1:bd7da995f192 | 42 | measure_timer.start(2000); |
yueee_yt | 1:bd7da995f192 | 43 | |
yueee_yt | 0:7766f6712673 | 44 | lcd.cls(); |
yueee_yt | 0:7766f6712673 | 45 | lcd.locate(0,0); |
yueee_yt | 0:7766f6712673 | 46 | |
yueee_yt | 0:7766f6712673 | 47 | printf("********* RPC Initialize ***********\r\n"); |
yueee_yt | 0:7766f6712673 | 48 | RPC::add_rpc_class<RpcDigitalOut>(); |
yueee_yt | 0:7766f6712673 | 49 | RPC::construct<RpcDigitalOut, PinName, const char*>(LED1, "led1"); |
yueee_yt | 0:7766f6712673 | 50 | RPC::construct<RpcDigitalOut, PinName, const char*>(LED2, "led2"); |
yueee_yt | 0:7766f6712673 | 51 | RPC::construct<RpcDigitalOut, PinName, const char*>(LED3, "led3"); |
yueee_yt | 0:7766f6712673 | 52 | RPCFunction rpcFunc(LcdWrite, "LcdWrite"); |
yueee_yt | 1:bd7da995f192 | 53 | RPCVariable <float>rpcval(&Temp,"temp"); |
yueee_yt | 0:7766f6712673 | 54 | printf("EthernetInterface Setting up...\r\n"); |
yueee_yt | 0:7766f6712673 | 55 | if(eth.init()!=0) { //for DHCP Server |
yueee_yt | 0:7766f6712673 | 56 | // if(eth.init("133.11.168.23","255.255.255.0","133.11.168.1")!=0) { //for Static IP Address |
yueee_yt | 0:7766f6712673 | 57 | printf("EthernetInterface Initialize Error \r\n"); |
yueee_yt | 0:7766f6712673 | 58 | return -1; |
yueee_yt | 0:7766f6712673 | 59 | } |
yueee_yt | 0:7766f6712673 | 60 | if(eth.connect()!=0) { |
yueee_yt | 0:7766f6712673 | 61 | printf("EthernetInterface Connect Error \r\n"); |
yueee_yt | 0:7766f6712673 | 62 | return -1; |
yueee_yt | 0:7766f6712673 | 63 | } |
yueee_yt | 0:7766f6712673 | 64 | printf("IP Address is %s\r\n", eth.getIPAddress()); |
yueee_yt | 0:7766f6712673 | 65 | printf("NetMask is %s\r\n", eth.getNetworkMask()); |
yueee_yt | 0:7766f6712673 | 66 | printf("Gateway Address is %s\r\n", eth.getGateway()); |
yueee_yt | 0:7766f6712673 | 67 | printf("Ethernet Setup OK\r\n"); |
yueee_yt | 0:7766f6712673 | 68 | |
yueee_yt | 0:7766f6712673 | 69 | FSHandler::mount("/local","/"); |
yueee_yt | 0:7766f6712673 | 70 | |
yueee_yt | 0:7766f6712673 | 71 | lcd.locate(0,0); |
yueee_yt | 0:7766f6712673 | 72 | lcd.printf("%s",eth.getIPAddress()); |
yueee_yt | 0:7766f6712673 | 73 | HTTPServerStart(80); |
yueee_yt | 0:7766f6712673 | 74 | } |
yueee_yt | 0:7766f6712673 | 75 | |
yueee_yt | 0:7766f6712673 | 76 | void LcdWrite(Arguments* arg, Reply* r) //RPC Call |
yueee_yt | 0:7766f6712673 | 77 | { |
yueee_yt | 0:7766f6712673 | 78 | lcd.locate(0,1); |
yueee_yt | 0:7766f6712673 | 79 | lcd.printf("%s",arg->argv[0]); |
yueee_yt | 0:7766f6712673 | 80 | } |
yueee_yt | 0:7766f6712673 | 81 |