Mini Project 10: Displaying stuff from day 7

Dependencies:   DmTouch_UniGraphic UniGraphic mbed

Committer:
swescott17
Date:
Wed Jan 18 01:48:47 2017 +0000
Revision:
16:995c9920f14e
Parent:
12:bd1d030d5c30
Reading every ten seconds

Who changed what in which revision?

UserRevisionLine numberNew contents of line
swescott17 0:1ebe73e062a7 1 #include "temp_sensor.h"
swescott17 0:1ebe73e062a7 2
swescott17 0:1ebe73e062a7 3 const int addr = 0x90;
swescott17 0:1ebe73e062a7 4 char config_t[3];
swescott17 0:1ebe73e062a7 5 char temp_read[2];
swescott17 0:1ebe73e062a7 6 float temp;
swescott17 0:1ebe73e062a7 7
swescott17 0:1ebe73e062a7 8 void temperature_config(void)//configures the temperature sensor
swescott17 0:1ebe73e062a7 9 {
swescott17 0:1ebe73e062a7 10 config_t[0] = 0x01; //sets the array with the bytes
swescott17 0:1ebe73e062a7 11 config_t[1] = 0x60;
swescott17 0:1ebe73e062a7 12 config_t[2] = 0xA0;
swescott17 0:1ebe73e062a7 13 i2c_port.write(addr, config_t, 3); //sets up the sensor
swescott17 0:1ebe73e062a7 14 config_t[0] = 0x00; //sets a new value for the byte, the mode
swescott17 0:1ebe73e062a7 15 i2c_port.write(addr, config_t, 1);
swescott17 0:1ebe73e062a7 16 }
swescott17 0:1ebe73e062a7 17
swescott17 0:1ebe73e062a7 18 float temperature()
swescott17 0:1ebe73e062a7 19 {
swescott17 12:bd1d030d5c30 20 float sum = 0;
swescott17 12:bd1d030d5c30 21 for (int i = 0; i < 5; i++)
swescott17 12:bd1d030d5c30 22 {
swescott17 0:1ebe73e062a7 23 i2c_port.read(addr, temp_read, 2); //reads in two temperature values from the sensor
swescott17 0:1ebe73e062a7 24 temp = 0.0625 * (((temp_read[0] << 8)+temp_read[1]) >> 4); //turns them into degrees C
swescott17 12:bd1d030d5c30 25 sum += temp;
swescott17 12:bd1d030d5c30 26 }
swescott17 12:bd1d030d5c30 27 sum= sum/5;
swescott17 12:bd1d030d5c30 28 return sum;
swescott17 0:1ebe73e062a7 29 }
swescott17 0:1ebe73e062a7 30