ISSDK  1.8
IoT Sensing Software Development Kit
Macros | Functions | Variables
mpl3115_altitude.c File Reference
#include "pin_mux.h"
#include "clock_config.h"
#include "board.h"
#include "fsl_debug_console.h"
#include "Driver_I2C.h"
#include "issdk_hal.h"
#include "mpl3115_drv.h"
Include dependency graph for mpl3115_altitude.c:

Go to the source code of this file.

Macros

#define MPL3115_DATA_SIZE   (5) /* 3 byte Pressure/Altitude and 2 byte Temperature. */
 
#define MPL3115_SAMPLING_EXPONENT   (1) /* 2 seconds */
 

Functions

int main (void)
 Main function. More...
 

Variables

const registerwritelist_t cMpl3115ConfigAltitude []
 Register settings for Altitude readings in Normal (non buffered) mode. More...
 
const registerreadlist_t cMpl3115Status [] = {{.readFrom = MPL3115_STATUS, .numBytes = 1}, __END_READ_DATA__}
 Address of Status Register. More...
 
const registerreadlist_t cMpl3115OutputNormal []
 Address and size of Raw Altitude+Temperature Data in Normal Mode. More...
 

Macro Definition Documentation

◆ MPL3115_DATA_SIZE

#define MPL3115_DATA_SIZE   (5) /* 3 byte Pressure/Altitude and 2 byte Temperature. */

Definition at line 35 of file mpl3115_altitude.c.

Referenced by main().

◆ MPL3115_SAMPLING_EXPONENT

#define MPL3115_SAMPLING_EXPONENT   (1) /* 2 seconds */

In MPL3115 the Auto Acquisition Time Step (ODR) can be set only in powers of 2 (i.e. 2^x, where x is the SAMPLING_EXPONENT). This gives a range of 1 second to 2^15 seconds (9 hours).

Definition at line 39 of file mpl3115_altitude.c.

Function Documentation

◆ main()

int main ( void  )

Main function.

Initialize the I2C driver.

Set the I2C Power mode.

Set the I2C bus speed.

Initialize MPL3115 sensor driver.

Set the task to be executed while waiting for I2C transactions to complete.

Configure the MPL3115 sensor.

Wait for data ready from the MPL3115.

Read new raw sensor data from the MPL3115.

Process the sample and convert the raw sensor data.

Definition at line 70 of file mpl3115_altitude.c.

References mpl3115_altitudedata_t::altitude, ASK_USER_TO_RESUME, BOARD_BootClockRUN, BOARD_InitDebugConsole(), BOARD_InitPins(), data, I2C_S_DEVICE_INDEX, I2C_S_DRIVER, I2C_S_SIGNAL_EVENT, I2Cdrv, int32_t(), MPL3115_ALTITUDE_CONV_FACTOR, MPL3115_DATA_SIZE, MPL3115_DR_STATUS_PTDR_MASK, MPL3115_I2C_ADDR, MPL3115_I2C_Configure(), MPL3115_I2C_Initialize(), MPL3115_I2C_ReadData(), MPL3115_I2C_SetIdleTask(), MPL3115_TEMPERATURE_CONV_FACTOR, MPL3115_WHOAMI_VALUE, rawData, SENSOR_ERROR_NONE, SMC, SMC_SetPowerModeVlpr(), status, and mpl3115_altitudedata_t::temperature.

Here is the call graph for this function:

Variable Documentation

◆ cMpl3115ConfigAltitude

const registerwritelist_t cMpl3115ConfigAltitude[]
Initial value:
= {
#define MPL3115_CTRL_REG2_ST_MASK
Definition: mpl3115.h:916
#define MPL3115_SAMPLING_EXPONENT
#define __END_WRITE_DATA__
Definition: sensor_drv.h:45
#define MPL3115_PT_DATA_CFG_TDEFE_MASK
Definition: mpl3115.h:550
#define MPL3115_PT_DATA_CFG_DREM_ENABLED
Definition: mpl3115.h:570
#define MPL3115_PT_DATA_CFG_PDEFE_MASK
Definition: mpl3115.h:553
#define MPL3115_CTRL_REG1_OS_OSR_128
Definition: mpl3115.h:884
#define MPL3115_CTRL_REG1_ALT_MASK
Definition: mpl3115.h:861
#define MPL3115_PT_DATA_CFG_DREM_MASK
Definition: mpl3115.h:556
#define MPL3115_PT_DATA_CFG_PDEFE_ENABLED
Definition: mpl3115.h:567
#define MPL3115_PT_DATA_CFG_TDEFE_ENABLED
Definition: mpl3115.h:564
#define MPL3115_CTRL_REG1_OS_MASK
Definition: mpl3115.h:855
#define MPL3115_CTRL_REG1_ALT_ALT
Definition: mpl3115.h:888

Register settings for Altitude readings in Normal (non buffered) mode.

Definition at line 45 of file mpl3115_altitude.c.

◆ cMpl3115OutputNormal

const registerreadlist_t cMpl3115OutputNormal[]
Initial value:
= {{.readFrom = MPL3115_OUT_P_MSB, .numBytes = MPL3115_DATA_SIZE},
#define __END_READ_DATA__
Definition: sensor_drv.h:51
#define MPL3115_DATA_SIZE

Address and size of Raw Altitude+Temperature Data in Normal Mode.

Definition at line 61 of file mpl3115_altitude.c.

◆ cMpl3115Status

const registerreadlist_t cMpl3115Status[] = {{.readFrom = MPL3115_STATUS, .numBytes = 1}, __END_READ_DATA__}

Address of Status Register.

Definition at line 58 of file mpl3115_altitude.c.