Demo program for the MPL3115A2 library.

Dependencies:   MPL3115A2 mbed

Example program for MPL3115 sensor. Added code for data acquisition using Interrupt.

main.cpp

Committer:
clemente
Date:
2013-05-23
Revision:
1:5ea71ebc0d82
Parent:
0:5d92b48edaff
Child:
2:0b726b8c8ab9

File content as of revision 1:5ea71ebc0d82:

#include "mbed.h"
#include "MPL3115A2.h"

#define MPL3115A2_I2C_ADDRESS (0x60<<1)

DigitalOut myled(LED1);
MPL3115A2 wigo_sensor1( PTE0, PTE1, MPL3115A2_I2C_ADDRESS);
Serial pc(USBTX, USBRX);

/* pos [0] = altimeter or pressure value */
/* pos [1] = temperature value */
float sensor_data[2];

int main() {
    
    unsigned int mode=1;
    
    pc.baud( 230400);
    pc.printf("MPL3115A2 Barometric mode. [%d]\r\n", wigo_sensor1.getDeviceID());
    
    wigo_sensor1.Oversample_Ratio( OVERSAMPLE_RATIO_32);
    wigo_sensor1.Barometric_Mode();
    
    while(1) {
        //
        if ( wigo_sensor1.isDataAvailable()) {
            wigo_sensor1.getAllData( &sensor_data[0]);
            if ( mode & 0x0001) {
                pc.printf("\tPressure: %f\tTemperature: %f\r\n", sensor_data[0], sensor_data[1]);
                wigo_sensor1.Altimeter_Mode();
            } else {
                pc.printf("\tAltitude: %f\tTemperature: %f\r\n", sensor_data[0], sensor_data[1]);
                wigo_sensor1.Barometric_Mode();            
            }
            mode++;
        }
        //
        wait( 0.001);
    }
}