42 mpl->initialized =
false;
46 mpl->raw_mode =
false;
47 mpl->alt_mode =
false;
57 switch (
mpl->init_status) {
67 (
mpl->alt_mode << 7));
72 mpl->initialized =
true;
109 if (
mpl->initialized) {
114 if (
mpl->trans.buf[0] & (1 << 2)) {
128 mpl->pressure = (
tmp >> 4);
131 mpl->temperature = (
tmp >> 4);
133 mpl->data_available =
true;
155 if (
mpl->initialized) {
struct i2c_transaction * trans[I2C_TRANSACTION_QUEUE_LEN]
uint8_t slave_addr
Slave address.
bool i2c_transmit(struct i2c_periph *p, struct i2c_transaction *t, uint8_t s_addr, uint8_t len)
Submit a write only transaction.
bool i2c_transceive(struct i2c_periph *p, struct i2c_transaction *t, uint8_t s_addr, uint8_t len_w, uint16_t len_r)
Submit a write/read transaction.
@ I2CTransSuccess
transaction successfully finished by I2C driver
@ I2CTransFailed
transaction failed
@ I2CTransDone
transaction set to done by user level
void mpl3115_read(struct Mpl3115 *mpl)
static void mpl3115_send_config(struct Mpl3115 *mpl)
void mpl3115_periodic(struct Mpl3115 *mpl)
void mpl3115_init(struct Mpl3115 *mpl, struct i2c_periph *i2c_p, uint8_t addr)
void mpl3115_configure(struct Mpl3115 *mpl)
void mpl3115_event(struct Mpl3115 *mpl)
Driver for the baro MPL3115A2 from Freescale (i2c)
#define MPL3115_OVERSAMPLING
#define MPL3115_REG_CTRL_REG1
#define MPL3115_PT_DATA_CFG
#define MPL3115_REG_STATUS
#define MPL3115_REG_PT_DATA_CFG
unsigned short uint16_t
Typedef defining 16 bit unsigned short type.
unsigned int uint32_t
Typedef defining 32 bit unsigned int type.
short int16_t
Typedef defining 16 bit short type.
unsigned char uint8_t
Typedef defining 8 bit unsigned char type.