choongman kim
/
21300206kimchoongmanhw3
21300206kimchoongmanhw3
Fork of coap-example by
source/main.cpp@1:72dca6351fc1, 2018-01-02 (annotated)
- Committer:
- trnoo
- Date:
- Tue Jan 02 14:27:09 2018 +0000
- Revision:
- 1:72dca6351fc1
- Parent:
- 0:0681e205d0e9
21300206 KimChoongMan
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
trnoo | 1:72dca6351fc1 | 1 | #include <string.h> |
Jan Jongboom |
0:0681e205d0e9 | 2 | #include "mbed.h" |
Jan Jongboom |
0:0681e205d0e9 | 3 | #include "easy-connect.h" |
trnoo | 1:72dca6351fc1 | 4 | #include "TCPSocket.h" |
trnoo | 1:72dca6351fc1 | 5 | #include "DHT.h" |
Jan Jongboom |
0:0681e205d0e9 | 6 | |
trnoo | 1:72dca6351fc1 | 7 | DHT sensor(A0,DHT22); |
Jan Jongboom |
0:0681e205d0e9 | 8 | |
trnoo | 1:72dca6351fc1 | 9 | #define SERVER_IP "192.168.0.7" |
trnoo | 1:72dca6351fc1 | 10 | #define SERVER_PORT 50000 |
Jan Jongboom |
0:0681e205d0e9 | 11 | |
trnoo | 1:72dca6351fc1 | 12 | Serial pc(USBTX, USBRX); // computer to mbed boardSerial esp(D1, D0); |
trnoo | 1:72dca6351fc1 | 13 | |
trnoo | 1:72dca6351fc1 | 14 | //void http_demo(NetworkInterface *net) { TCPSocket socket; // for HTTP |
trnoo | 1:72dca6351fc1 | 15 | //pc.printf("Sending HTTP request to %s : %d ...\r\n", SERVER_IP, SERVER_PORT); |
Jan Jongboom |
0:0681e205d0e9 | 16 | |
trnoo | 1:72dca6351fc1 | 17 | |
trnoo | 1:72dca6351fc1 | 18 | char rbuffer[20]; |
Jan Jongboom |
0:0681e205d0e9 | 19 | |
trnoo | 1:72dca6351fc1 | 20 | |
trnoo | 1:72dca6351fc1 | 21 | |
Jan Jongboom |
0:0681e205d0e9 | 22 | |
trnoo | 1:72dca6351fc1 | 23 | int main(){ |
trnoo | 1:72dca6351fc1 | 24 | int error = 0; |
trnoo | 1:72dca6351fc1 | 25 | pc.baud(115200); |
trnoo | 1:72dca6351fc1 | 26 | pc.printf("\r\n Simple HTTP example over ESP8266\r\n\r\n"); |
Jan Jongboom |
0:0681e205d0e9 | 27 | |
trnoo | 1:72dca6351fc1 | 28 | pc.printf("\r\nConnecting...\r\n"); |
trnoo | 1:72dca6351fc1 | 29 | |
trnoo | 1:72dca6351fc1 | 30 | NetworkInterface *network = easy_connect(true); |
trnoo | 1:72dca6351fc1 | 31 | while(!network){ |
trnoo | 1:72dca6351fc1 | 32 | pc.printf("Error: Cannot connect to the network\r\n"); |
trnoo | 1:72dca6351fc1 | 33 | wait(1); |
trnoo | 1:72dca6351fc1 | 34 | network = easy_connect(true); |
Jan Jongboom |
0:0681e205d0e9 | 35 | } |
trnoo | 1:72dca6351fc1 | 36 | |
trnoo | 1:72dca6351fc1 | 37 | pc.printf("Success\r\n\r\n"); |
trnoo | 1:72dca6351fc1 | 38 | pc.printf("MAC: %s\r\n", network->get_mac_address()); |
trnoo | 1:72dca6351fc1 | 39 | pc.printf("IP: %s\r\n", network->get_ip_address()); |
trnoo | 1:72dca6351fc1 | 40 | pc.printf("Netmask: %s\r\n", network->get_netmask()); |
trnoo | 1:72dca6351fc1 | 41 | pc.printf("Gateway: %s\r\n", network->get_gateway()); |
trnoo | 1:72dca6351fc1 | 42 | pc.printf("RSSI: %d\r\n\r\n", wifi.get_rssi()); |
Jan Jongboom |
0:0681e205d0e9 | 43 | |
trnoo | 1:72dca6351fc1 | 44 | // http_demo(network); |
trnoo | 1:72dca6351fc1 | 45 | // network->disconnect(); |
trnoo | 1:72dca6351fc1 | 46 | pc.printf("\r\nDone\r\n"); |
Jan Jongboom |
0:0681e205d0e9 | 47 | |
Jan Jongboom |
0:0681e205d0e9 | 48 | |
trnoo | 1:72dca6351fc1 | 49 | TCPSocket socket; |
Jan Jongboom |
0:0681e205d0e9 | 50 | |
trnoo | 1:72dca6351fc1 | 51 | socket.open(network); |
trnoo | 1:72dca6351fc1 | 52 | socket.connect(SERVER_IP, SERVER_PORT); |
Jan Jongboom |
0:0681e205d0e9 | 53 | |
trnoo | 1:72dca6351fc1 | 54 | int temp = 0, hum = 0; |
trnoo | 1:72dca6351fc1 | 55 | int scount, rcount; |
trnoo | 1:72dca6351fc1 | 56 | |
trnoo | 1:72dca6351fc1 | 57 | while(1){ |
trnoo | 1:72dca6351fc1 | 58 | |
trnoo | 1:72dca6351fc1 | 59 | pc.printf("a710 server is %s : %d ...\r\n", SERVER_IP, SERVER_PORT); |
trnoo | 1:72dca6351fc1 | 60 | |
trnoo | 1:72dca6351fc1 | 61 | char rbuffer[64]={}; |
trnoo | 1:72dca6351fc1 | 62 | |
trnoo | 1:72dca6351fc1 | 63 | rcount = socket.recv(rbuffer, sizeof rbuffer); |
trnoo | 1:72dca6351fc1 | 64 | |
trnoo | 1:72dca6351fc1 | 65 | pc.printf("%s\r\n", rbuffer); |
trnoo | 1:72dca6351fc1 | 66 | if(!strcmp(rbuffer, "GET /DHT22\r\n")){ |
trnoo | 1:72dca6351fc1 | 67 | char sbuffer[64]={}; |
trnoo | 1:72dca6351fc1 | 68 | scount = socket.send("OK\r\n", sizeof("OK\r\n")); |
trnoo | 1:72dca6351fc1 | 69 | error = sensor.readData(); |
trnoo | 1:72dca6351fc1 | 70 | if (error == 0) { |
trnoo | 1:72dca6351fc1 | 71 | temp = sensor.ReadTemperature(CELCIUS); |
trnoo | 1:72dca6351fc1 | 72 | hum = sensor.ReadHumidity(); |
trnoo | 1:72dca6351fc1 | 73 | } |
trnoo | 1:72dca6351fc1 | 74 | else { |
trnoo | 1:72dca6351fc1 | 75 | printf("Error: %d\r\n", error); |
trnoo | 1:72dca6351fc1 | 76 | } |
trnoo | 1:72dca6351fc1 | 77 | sprintf(sbuffer, "{ \"temp\": \"%d\", \"humid\": \"%d\"}\r\n", temp, hum); |
trnoo | 1:72dca6351fc1 | 78 | scount = socket.send(sbuffer, sizeof(sbuffer)); |
trnoo | 1:72dca6351fc1 | 79 | pc.printf(sbuffer); |
trnoo | 1:72dca6351fc1 | 80 | } |
trnoo | 1:72dca6351fc1 | 81 | else{ |
trnoo | 1:72dca6351fc1 | 82 | pc.printf("Unknown request\r\n"); |
trnoo | 1:72dca6351fc1 | 83 | scount = socket.send("Unknown request\r\n", sizeof("Unknown request\r\n")); |
trnoo | 1:72dca6351fc1 | 84 | } |
trnoo | 1:72dca6351fc1 | 85 | } |
Jan Jongboom |
0:0681e205d0e9 | 86 | } |