checking temperature and display it on phant server.
Dependencies: NetServices-Traffic mbed
Fork of Tweeting_Periodic_Room_Temperature by
main.cpp@1:c1df4cf13f16, 2015-02-22 (annotated)
- Committer:
- priyankapashte
- Date:
- Sun Feb 22 12:02:41 2015 +0000
- Revision:
- 1:c1df4cf13f16
- Parent:
- 0:88e082c58797
- Child:
- 2:46aa4f29041c
final
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
rrajan8 | 0:88e082c58797 | 1 | #include "mbed.h" |
rrajan8 | 0:88e082c58797 | 2 | #include "EthernetNetIf.h" |
priyankapashte | 1:c1df4cf13f16 | 3 | #include "NTPClient.h" |
rrajan8 | 0:88e082c58797 | 4 | #include "HTTPClient.h" |
priyankapashte | 1:c1df4cf13f16 | 5 | Serial pc(USBTX, USBRX); |
priyankapashte | 1:c1df4cf13f16 | 6 | // networking stuff |
rrajan8 | 0:88e082c58797 | 7 | EthernetNetIf eth; |
priyankapashte | 1:c1df4cf13f16 | 8 | NTPClient ntp; |
rrajan8 | 0:88e082c58797 | 9 | HTTPClient http; |
priyankapashte | 1:c1df4cf13f16 | 10 | |
priyankapashte | 1:c1df4cf13f16 | 11 | char* thingSpeakUrl = "https://api.thingspeak.com/apps/thingtweet/1/statuses/update"; |
priyankapashte | 1:c1df4cf13f16 | 12 | char* thingSpeakKey = "Z0EQH6OQ8HLNNL6G"; |
priyankapashte | 1:c1df4cf13f16 | 13 | |
priyankapashte | 1:c1df4cf13f16 | 14 | char urlBuffer[256]; |
priyankapashte | 1:c1df4cf13f16 | 15 | char timeBuffer[64]; |
priyankapashte | 1:c1df4cf13f16 | 16 | |
priyankapashte | 1:c1df4cf13f16 | 17 | // pin defs |
priyankapashte | 1:c1df4cf13f16 | 18 | AnalogIn temp(p20); |
priyankapashte | 1:c1df4cf13f16 | 19 | |
rrajan8 | 0:88e082c58797 | 20 | int main() { |
priyankapashte | 1:c1df4cf13f16 | 21 | |
priyankapashte | 1:c1df4cf13f16 | 22 | pc.printf("Start\r\n"); |
priyankapashte | 1:c1df4cf13f16 | 23 | |
priyankapashte | 1:c1df4cf13f16 | 24 | pc.printf("Setting up Ethernet...\r\n"); |
priyankapashte | 1:c1df4cf13f16 | 25 | EthernetErr ethErr = eth.setup(); |
priyankapashte | 1:c1df4cf13f16 | 26 | if(ethErr) |
priyankapashte | 1:c1df4cf13f16 | 27 | { |
priyankapashte | 1:c1df4cf13f16 | 28 | pc.printf("Error %d in ethernet setup.\r\n", ethErr); |
rrajan8 | 0:88e082c58797 | 29 | return -1; |
rrajan8 | 0:88e082c58797 | 30 | } |
priyankapashte | 1:c1df4cf13f16 | 31 | pc.printf("Ethernet setup OK\r\n"); |
priyankapashte | 1:c1df4cf13f16 | 32 | |
priyankapashte | 1:c1df4cf13f16 | 33 | while(1) |
priyankapashte | 1:c1df4cf13f16 | 34 | { |
priyankapashte | 1:c1df4cf13f16 | 35 | float temperature = temp.read(); |
priyankapashte | 1:c1df4cf13f16 | 36 | temperature=temperature*150; |
priyankapashte | 1:c1df4cf13f16 | 37 | |
priyankapashte | 1:c1df4cf13f16 | 38 | // for debug |
priyankapashte | 1:c1df4cf13f16 | 39 | pc.printf("Time: %s, Temperature: %f\r\n", timeBuffer, temperature); |
priyankapashte | 1:c1df4cf13f16 | 40 | |
priyankapashte | 1:c1df4cf13f16 | 41 | // format url here |
priyankapashte | 1:c1df4cf13f16 | 42 | urlBuffer[0] = 0; |
priyankapashte | 1:c1df4cf13f16 | 43 | sprintf(urlBuffer, "%s?api_key=%s&status= %s %f", thingSpeakUrl, thingSpeakKey, "Temperature",temperature); |
priyankapashte | 1:c1df4cf13f16 | 44 | pc.printf("Request to %s\r\n", urlBuffer); |
priyankapashte | 1:c1df4cf13f16 | 45 | |
priyankapashte | 1:c1df4cf13f16 | 46 | HTTPText resp; |
priyankapashte | 1:c1df4cf13f16 | 47 | HTTPResult res = http.get(urlBuffer, &resp); |
priyankapashte | 1:c1df4cf13f16 | 48 | if (res == HTTP_OK) |
priyankapashte | 1:c1df4cf13f16 | 49 | { |
priyankapashte | 1:c1df4cf13f16 | 50 | pc.printf("Result :\"%s\"\r\n", resp.gets()); |
rrajan8 | 0:88e082c58797 | 51 | } |
priyankapashte | 1:c1df4cf13f16 | 52 | else |
priyankapashte | 1:c1df4cf13f16 | 53 | { |
priyankapashte | 1:c1df4cf13f16 | 54 | pc.printf("Error %d\r\n", res); |
priyankapashte | 1:c1df4cf13f16 | 55 | } |
priyankapashte | 1:c1df4cf13f16 | 56 | |
priyankapashte | 1:c1df4cf13f16 | 57 | wait(16); // limited by ThingSpeak's API |
priyankapashte | 1:c1df4cf13f16 | 58 | } |
priyankapashte | 1:c1df4cf13f16 | 59 | } |