post sensor data to esp yun
Dependencies: WIZnetInterface mbed
Fork of espyun by
Diff: main.cpp
- Revision:
- 8:472cd389f3eb
- Parent:
- 7:bda2a6a118f7
- Child:
- 9:b5c8b5e14195
--- a/main.cpp Wed Nov 09 09:25:49 2016 +0000 +++ b/main.cpp Fri Nov 25 01:38:01 2016 +0000 @@ -8,15 +8,13 @@ AnalogIn myInA1(A1); int socketPort = 8000; int httpPort = 80; - +char g_buffer[500]; + Serial pc(PA_13,PA_14); int MallocSize = 800*sizeof(char); -//bool socket_GET(TCPSocketConnection &conn); bool http_GET(TCPSocketConnection &conn); bool http_POST(TCPSocketConnection &conn,int vall); -//bool socket_POST(TCPSocketConnection &conn,int vall); -//bool closeConnect(TCPSocketConnection &conn); void receive_dht11(); unsigned char receive_byte(); void button_led(); @@ -44,7 +42,7 @@ unsigned int U8FLAG; static unsigned char num = 4; const char receive_module[4][5] = {"Led", "Gas", "Hum", "Temp", }; -#if 1 + int main() { int phy_link; pc.printf("Wait a second...\r\n"); @@ -102,62 +100,12 @@ pc.printf("out the program!\r\n"); return 0; } -#else -int main() { - pc.printf("Wait a second...\r\n"); - uint8_t mac_addr[6] = {0x78, 0x08, 0xDC, 0x1c, 0xa8, 0x95}; - - EthernetInterface eth; - eth.init(mac_addr); //Use DHCP - eth.connect(); - pc.printf("start IP Address is %s\r\n", eth.getIPAddress()); - eth.ethernet_link(); - pc.printf("IP Address is %s\r\n", eth.getIPAddress()); - - TCPSocketConnection conn; - - - while(true) - { - int ret = 0; - pc.printf("start http_post\r\n"); - //ret = conn.connect("192.168.1.41", 10086); - ret = conn.connect("iot.espressif.cn", httpPort); - - pc.printf("connect ret=%d\n",ret); - ret = conn.send_all("asdfghh", 7);//http_cmd for http,pJSON for - pc.printf("send ret=%d\n",ret); - wait(1.0f); - ret = conn.close(); - pc.printf("close ret=%d\n",ret); - wait(1.0f); - } - - - eth.disconnect(); - pc.printf("out the program!\r\n"); - return 0; -} - -#endif /*http POST*/ bool http_POST(TCPSocketConnection &conn, int val) { pc.printf("%s():%d\n",__FUNCTION__, __LINE__); - //wait(0.5); - /*if(conn.is_connected()){ - pc.printf("connect is already ok!\r\n"); - }else{pc.printf("%s():%d\n",__FUNCTION__, __LINE__); - if(!conn.connect("iot.espressif.cn", httpPort)) //80 for http,8000 for socket - pc.printf("connect OK!\r\n"); - else{ - pc.printf("connct ERR!\r\n"); - out = true; - return false; - } - }*///conn.connect("iot.espressif.cn", httpPort); - + cJSON* http_post=NULL; http_post = cJSON_CreateObject(); if(NULL == http_post) @@ -218,19 +166,6 @@ buffer = (char *)malloc(MallocSize); if(!buffer)pc.printf("malloc buffer err\r\n"); - /*int ret; - pc.printf("6666\r\n"); - while (true) - { - wait(1);pc.printf("%s():%d\n",__FUNCTION__, __LINE__); - ret = conn.receive_all(buffer, MallocSize-1);pc.printf("%s():%d\n",__FUNCTION__, __LINE__); - pc.printf("ret = %d\r\n",ret); - if (ret <= 0) { - ;//break; - } - buffer[ret] = '\0'; - pc.printf("Received %d chars from server: %s\n", ret, buffer); - }*/ pc.printf("http_POST OUT\r\n"); free(pJSON_http_post); @@ -255,37 +190,25 @@ } } - char http_cmd[] = "GET /v1/datastreams/Led/datapoint/ HTTP/1.1\r\nUser-Agent: curl/7.22.0 (i686-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3\r\n"\ + const char http_cmd[] = "GET /v1/datastreams/Led/datapoint/ HTTP/1.1\r\nUser-Agent: curl/7.22.0 (i686-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3\r\n"\ "Host:iot.espressif.cn\r\nAccept: */*\r\nAuthorization: token b1e92cf17fe4482647924941949ab2b07ffab548\r\n\r\n"; conn.send_all(http_cmd, strlen(http_cmd));//http_cmd for http,pJSON for socket,should be three changes pc.printf("%s\r\n",http_cmd); - //char *buffer = NULL; - //buffer = (char *)malloc(MallocSize); - //if(!buffer)pc.printf("malloc buffer err\r\n"); - char buffer[500]; int ret; while (true) { wait(1); - ret = conn.receive(buffer, 500-1); + ret = conn.receive(g_buffer, 500-1); pc.printf("ret = %d\r\n",ret); if (ret <= 0) { break; } - buffer[ret] = '\0'; - pc.printf("Received %d chars from server: %s\n", ret, buffer); + g_buffer[ret] = '\0'; + pc.printf("Received %d chars from server: %s\n", ret, g_buffer); } pc.printf("http_GET OUT\r\n"); - /* - if(conn.close()){ - pc.printf("conn.close OK\r\n"); - }else{ - pc.printf("conn.close ERR\r\n"); - } - */ - //free(buffer); return true; } @@ -345,12 +268,6 @@ check=num_check; } } - - //pc.printf("humidity [H] -out--%d\r\n", RH); - //pc.printf("humidity [L] -out--%d\r\n", RL); - //pc.printf("temperature [H] -out--%d\r\n", TH); - //pc.printf("temperature [L] -out--%d\r\n", TL); - receive_dht11Timeout.attach(&receive_dht11,0.2f); }