How to send data from mbed to thingspeak
Dependencies: HTTPClient WiflyInterface mbed
main.cpp
- Committer:
- maman95
- Date:
- 2018-02-12
- Revision:
- 0:e7668b44b4eb
File content as of revision 0:e7668b44b4eb:
#include "mbed.h" #include "WiflyInterface.h" #include "HTTPClient.h" WiflyInterface wifly(p9, p10, p30, p29, "Don", "don123456", WPA); Serial pc (USBTX, USBRX); AnalogIn moisture(p15); AnalogIn LM35(p16); DigitalOut myled1(LED1); HTTPClient http; //I2C tempsensor(p28, p27); //sda, sc1 //const int addr = 0x90; //char config_t[2]; //char temp_read[2]; //float temp; char* url = "http://35.176.39.52/mbed_data.php"; //URL for transmit data to server int main() { wifly.init(); //Use DHCP wifly.connect(); // Initiate connection to wifi pc.printf("\nClient IP Address is %s\n\r", wifly.getIPAddress()); float value=0; float tempC,a[10],avg; int i; while(1) { avg=0; for(i=0;i<10;i++) { a[i]=LM35.read(); wait(.02); } for(i=0;i<10;i++) { avg=avg+(a[i]/10); // For more accurate value in determining temperature } //char buf[24]; char urlBuffer[100]; //sprintf (buf, value1); value = moisture; tempC=(avg*3.68*100)-4; //int id = 1; int value1 = (int)(value * 1000); int temp = (int)(tempC); /*time_t seconds = time(NULL); seconds = seconds + 28800; char buffer[32]; strftime(buffer, 64, "%H:%M:%S_%d-%m-%Y", localtime(&seconds));*/ //For Time configuration sprintf(urlBuffer, "%s?value=%d&field=%d", url , value1 , temp ); // Convert it to buffer printf("Send to %s\r\n", urlBuffer); http.get(urlBuffer, urlBuffer , 10); // Execute the URL of urlBuffer wait(28.8); // Wifi module will execute the http.get every 31.2 seconds. Thus, waiting for 28.8 seconds means it will transmit data every 1 minute. } }