LinkNode_TemperatureAdvertising

Dependencies:   LinkNod_TemperatureAdvertising

Dependents:   LinkNode_Temperatur LinkNode_TemperatureAdvertising_22

Fork of Sensors by Delong Qi

Committer:
helloqi
Date:
Wed Apr 13 13:19:34 2016 +0000
Revision:
6:836584114fd6
Parent:
5:912a1f021b8d
LinkNode_TemperatureAdvertising

Who changed what in which revision?

UserRevisionLine numberNew contents of line
helloqi 3:9125dafacc63 1 #include "Sensors.h"
helloqi 3:9125dafacc63 2
helloqi 5:912a1f021b8d 3 I2C i2c(P0_17, P0_18);
helloqi 3:9125dafacc63 4 Ticker ticker1;
helloqi 5:912a1f021b8d 5 BMP180 bmp180(&i2c);
helloqi 5:912a1f021b8d 6
helloqi 5:912a1f021b8d 7 uint8_t data_1=0;
helloqi 5:912a1f021b8d 8 uint8_t i = 0;
helloqi 5:912a1f021b8d 9 float data=0;
helloqi 5:912a1f021b8d 10
helloqi 3:9125dafacc63 11 void add_data(void)
helloqi 3:9125dafacc63 12 {
helloqi 5:912a1f021b8d 13 if (bmp180.init() == 0)
helloqi 5:912a1f021b8d 14 {
helloqi 5:912a1f021b8d 15 bmp180.startTemperature();
helloqi 5:912a1f021b8d 16 wait_ms(5); // Wait for conversion to complete
helloqi 5:912a1f021b8d 17 float temp;
helloqi 5:912a1f021b8d 18 if(bmp180.getTemperature(&temp) == 0)
helloqi 5:912a1f021b8d 19 {
helloqi 5:912a1f021b8d 20 i++;
helloqi 5:912a1f021b8d 21 data = data + temp;
helloqi 5:912a1f021b8d 22 if(i==5)
helloqi 5:912a1f021b8d 23 {
helloqi 5:912a1f021b8d 24 data_1 = (uint8_t)(data/5.0);
helloqi 5:912a1f021b8d 25 i = 0;
helloqi 5:912a1f021b8d 26 data = 0;
helloqi 6:836584114fd6 27 //printf("The average temperature = %d C\n",data_1);
helloqi 5:912a1f021b8d 28 }
helloqi 6:836584114fd6 29 // printf("Temperature = %f C\n",temp);
helloqi 5:912a1f021b8d 30 }
helloqi 5:912a1f021b8d 31 }
helloqi 3:9125dafacc63 32 }
helloqi 3:9125dafacc63 33
helloqi 3:9125dafacc63 34 Sensors::tmpSensorValue_t Sensors::get()
helloqi 3:9125dafacc63 35 {
helloqi 5:912a1f021b8d 36 uint64_t p_temp = 0;
helloqi 3:9125dafacc63 37 ticker1.attach(add_data,1);
helloqi 5:912a1f021b8d 38 p_temp = p_temp|data_1;
helloqi 3:9125dafacc63 39 return p_temp;
helloqi 3:9125dafacc63 40 }