Mario Simaremare / Mbed 2 deprecated g3_waterplay

Dependencies:   mbed

SalinitySensor.cpp

Committer:
mariosimaremare
Date:
2016-06-07
Revision:
1:f448c12d2c5b
Parent:
0:ad9362f18797
Child:
2:ed17e258da0d

File content as of revision 1:f448c12d2c5b:

/*
* G3: WATERPLAY
*/

#include "SalinitySensor.h"
#include "mbed.h"

SalinitySensor::SalinitySensor(
    mbed::Serial &serial,
    PinName pin,
    double const_voltage,
    double const_converter,
    double const_multiplier
):
    _serial(serial),
    _analog_in(pin),
    _const_voltage(const_voltage),
    _const_converter(const_converter),
    _const_multiplier(const_multiplier),
    _reading(0.0),
    _voltage(0.0),
    _salinity(0.0)
{
    this->read();
    
}

double SalinitySensor::read()
{
    // the reading from sensor.
    this->_reading = this->_analog_in.read();
    // converted voltage.
    this->_voltage = 
        this->_reading *
        this->_const_voltage *
        this->_const_converter;
    // the salinity value.
    this->_salinity = 
        this->_voltage *
        this->_const_multiplier;

    /*
    _serial.printf(
        "\tsalinity: %5.4F | %5.4F | %5.4F\n\r",
        this->_reading,
        this->_voltage,
        this->_salinity
    );
    */

    return(this->_reading);
}

double SalinitySensor::getVoltage()
{
    return(this->_voltage);
}

double SalinitySensor::getSalinity()
{
    return(this->_salinity);
}