sensor lib

Dependents:   gather_sensor_data

Committer:
readysteadygo2006
Date:
Thu Sep 08 14:05:15 2016 +0000
Revision:
0:cbe8cd32b8d9
test;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
readysteadygo2006 0:cbe8cd32b8d9 1 #include "BH1750Sensor.h"
readysteadygo2006 0:cbe8cd32b8d9 2
readysteadygo2006 0:cbe8cd32b8d9 3 BH1750Sensor::BH1750Sensor(PinName scaPin, PinName sclPin): BH1750_sensor(scaPin, sclPin) {
readysteadygo2006 0:cbe8cd32b8d9 4 reading_type = BH1750_ALL;
readysteadygo2006 0:cbe8cd32b8d9 5 BH1750_sensor.init();
readysteadygo2006 0:cbe8cd32b8d9 6 }
readysteadygo2006 0:cbe8cd32b8d9 7
readysteadygo2006 0:cbe8cd32b8d9 8
readysteadygo2006 0:cbe8cd32b8d9 9 sensorStatus BH1750Sensor::readSensor(string &sensor_reading) {
readysteadygo2006 0:cbe8cd32b8d9 10
readysteadygo2006 0:cbe8cd32b8d9 11 //add start to reading
readysteadygo2006 0:cbe8cd32b8d9 12 sensor_reading = "{";
readysteadygo2006 0:cbe8cd32b8d9 13
readysteadygo2006 0:cbe8cd32b8d9 14 //Read Visible Light Intensity
readysteadygo2006 0:cbe8cd32b8d9 15 if ((reading_type & BH1750_VL) == BH1750_VL) {
readysteadygo2006 0:cbe8cd32b8d9 16 float vl = BH1750_sensor.readIntensity();
readysteadygo2006 0:cbe8cd32b8d9 17 //check required here
readysteadygo2006 0:cbe8cd32b8d9 18
readysteadygo2006 0:cbe8cd32b8d9 19 char reading_type_string[10];
readysteadygo2006 0:cbe8cd32b8d9 20 sprintf(reading_type_string, "%05X", BH1750_VL);
readysteadygo2006 0:cbe8cd32b8d9 21 char vl_string[10];
readysteadygo2006 0:cbe8cd32b8d9 22 sprintf(vl_string, "%2.2f", vl);
readysteadygo2006 0:cbe8cd32b8d9 23 sensor_reading = sensor_reading + reading_type_string + ":" + vl_string;
readysteadygo2006 0:cbe8cd32b8d9 24 }
readysteadygo2006 0:cbe8cd32b8d9 25
readysteadygo2006 0:cbe8cd32b8d9 26 //add end to reading
readysteadygo2006 0:cbe8cd32b8d9 27 sensor_reading = sensor_reading + "}";
readysteadygo2006 0:cbe8cd32b8d9 28
readysteadygo2006 0:cbe8cd32b8d9 29 return SENSOR_SUCCESS;
readysteadygo2006 0:cbe8cd32b8d9 30 }
readysteadygo2006 0:cbe8cd32b8d9 31
readysteadygo2006 0:cbe8cd32b8d9 32
readysteadygo2006 0:cbe8cd32b8d9 33 sensorStatus BH1750Sensor::setReadingType(sensorReadingType sensor_reading_types) {
readysteadygo2006 0:cbe8cd32b8d9 34 if ((sensor_reading_types > BH1750_FIRST) && (sensor_reading_types <= BH1750_ALL)) {
readysteadygo2006 0:cbe8cd32b8d9 35 reading_type = sensor_reading_types;
readysteadygo2006 0:cbe8cd32b8d9 36 return SENSOR_SUCCESS;
readysteadygo2006 0:cbe8cd32b8d9 37 } else {
readysteadygo2006 0:cbe8cd32b8d9 38 return SENSOR_PARAM_OUT_RANGE;
readysteadygo2006 0:cbe8cd32b8d9 39 }
readysteadygo2006 0:cbe8cd32b8d9 40 }
readysteadygo2006 0:cbe8cd32b8d9 41
readysteadygo2006 0:cbe8cd32b8d9 42 sensorReadingType BH1750Sensor::getReadingType() {
readysteadygo2006 0:cbe8cd32b8d9 43 return reading_type;
readysteadygo2006 0:cbe8cd32b8d9 44 }
readysteadygo2006 0:cbe8cd32b8d9 45