This sample code is to upload temperature and air pressure data to your Fastsensing account. It uses SCP1000 to measure temp and pressure. 解説記事はこちら(https://qiita.com/AkiraKashihara/items/fd21fa4fd85aa9f723aa)

Dependencies:   EthernetInterface Fastsensing HTTPClient SCP1000 mbed-rtos mbed

Committer:
AkiraK
Date:
Sun Apr 30 10:30:10 2017 +0000
Revision:
1:507f14e0c252
Parent:
0:4b1269eccf13
Put define of Device basic information on Global area.; Change variable of device ID and channel.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AkiraK 0:4b1269eccf13 1 #include "mbed.h"
AkiraK 0:4b1269eccf13 2 #include "SCP1000.h"
AkiraK 0:4b1269eccf13 3 #include "Fastsensing.h"
AkiraK 0:4b1269eccf13 4
AkiraK 0:4b1269eccf13 5 DigitalOut myled(LED1);
AkiraK 0:4b1269eccf13 6 DigitalIn button(p21);
AkiraK 0:4b1269eccf13 7 Serial pc(USBTX, USBRX);
AkiraK 0:4b1269eccf13 8 Fastsensing fast;
AkiraK 0:4b1269eccf13 9 SCP1000 scp1000(p5,p6,p7,p8);
AkiraK 0:4b1269eccf13 10
AkiraK 1:507f14e0c252 11 //Define User's Device Basic Information
AkiraK 1:507f14e0c252 12 char *deviceId = "Device ID(16 digits)"; //Device ID
AkiraK 1:507f14e0c252 13 char *channel[3] = {"Channel ID(8 digits)", "Channel ID", "Channel ID"}; //Channel ID : 1st ID is temperature. 2nd is humidity.
AkiraK 1:507f14e0c252 14
AkiraK 0:4b1269eccf13 15 int main() {
AkiraK 0:4b1269eccf13 16 float data[3]; //Data holder
AkiraK 0:4b1269eccf13 17 fast.ethConnect(); //Ethernet connect
AkiraK 0:4b1269eccf13 18
AkiraK 0:4b1269eccf13 19 while(1) {
AkiraK 0:4b1269eccf13 20 data[0] = scp1000.readPressure(true); //substitute Pressure data to data[0]
AkiraK 0:4b1269eccf13 21 data[1] = scp1000.readTemperature(true); //substitute Temperature data to data[1]
AkiraK 0:4b1269eccf13 22 pc.printf("The pressure is %f Pa and the temperature is %f C\n", data[0], data[1]); //display pressure and temperature to PC
AkiraK 0:4b1269eccf13 23 int val = fast.updateDataAll(deviceId, channel, data); //Send all got data to fastsensing.com
AkiraK 0:4b1269eccf13 24 pc.printf("res : %d\n", val); //updateDataAll result display
AkiraK 0:4b1269eccf13 25 myled = 1;
AkiraK 0:4b1269eccf13 26 if(button == 1) break;
AkiraK 0:4b1269eccf13 27 wait(10.0);
AkiraK 0:4b1269eccf13 28 myled = 0;
AkiraK 0:4b1269eccf13 29 }
AkiraK 0:4b1269eccf13 30 fast.ethDisconnect(); //Ethernet disconnect
AkiraK 0:4b1269eccf13 31 while(1) {
AkiraK 0:4b1269eccf13 32 myled = 1;
AkiraK 0:4b1269eccf13 33 wait(0.5);
AkiraK 0:4b1269eccf13 34 myled = 0;
AkiraK 0:4b1269eccf13 35 wait(0.5);
AkiraK 0:4b1269eccf13 36 }
AkiraK 0:4b1269eccf13 37 }