ISSDK  1.7
IoT Sensing Software Development Kit
Macros | Functions | Variables
fxos8700_poll.c File Reference

The fxos8700_poll.c file implements the ISSDK FXOS8700 sensor driver example demonstration with polling mode. More...

#include "board.h"
#include "pin_mux.h"
#include "clock_config.h"
#include "fsl_debug_console.h"
#include "Driver_I2C.h"
#include "issdk_hal.h"
#include "fxos8700_drv.h"
Include dependency graph for fxos8700_poll.c:

Go to the source code of this file.

Macros

#define RAW_ACCELMAG_DATA_SIZE   (12)
 

Functions

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

Variables

const registerwritelist_t fxos8700_Config_Hybrid []
 
const registerreadlist_t FXOS8700_STATUS_READ [] = {{.readFrom = FXOS8700_STATUS, .numBytes = 1}, __END_READ_DATA__}
 
const registerreadlist_t FXOS8700_ACCELMAG_READ []
 
const registerreadlist_t FXOS8700_ACCEL_MAG_READ []
 

Detailed Description

The fxos8700_poll.c file implements the ISSDK FXOS8700 sensor driver example demonstration with polling mode.

Definition in file fxos8700_poll.c.

Macro Definition Documentation

◆ RAW_ACCELMAG_DATA_SIZE

#define RAW_ACCELMAG_DATA_SIZE   (12)

Definition at line 57 of file fxos8700_poll.c.

Referenced by main().

Function Documentation

◆ main()

int main ( void  )

Main function.

Initialize the MCU hardware.

Initialize the I2C driver.

Set the I2C Power mode.

Set the I2C bus speed.

Initialize the FXOS8700 sensor driver.

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

Configure the fxos8700 sensor driver.

Wait for data ready from the FXOS8700.

Read the raw sensor data from the fxos8700.

Convert the raw sensor data to signed 16-bit container for display to the debug port.

Definition at line 91 of file fxos8700_poll.c.

References fxos8700_accelmagdata_t::accel, ASK_USER_TO_RESUME, BOARD_BootClockRUN, BOARD_InitDebugConsole(), BOARD_InitPins(), data, FXOS8700_DR_STATUS_ZYXDR_MASK, FXOS8700_I2C_ADDR, FXOS8700_I2C_Configure(), FXOS8700_I2C_Initialize(), FXOS8700_I2C_ReadData(), FXOS8700_I2C_SetIdleTask(), FXOS8700_WHO_AM_I_PROD_VALUE, I2C_S_DEVICE_INDEX, I2C_S_DRIVER, I2C_S_SIGNAL_EVENT, int32_t(), fxos8700_accelmagdata_t::mag, RAW_ACCELMAG_DATA_SIZE, rawData, SENSOR_ERROR_NONE, SMC, SMC_SetPowerModeWait(), and status.

Here is the call graph for this function:

Variable Documentation

◆ FXOS8700_ACCEL_MAG_READ

const registerreadlist_t FXOS8700_ACCEL_MAG_READ[]
Initial value:
= {{.readFrom = FXOS8700_OUT_X_MSB, .numBytes = 6},
{.readFrom = FXOS8700_M_OUT_X_MSB, .numBytes = 6},
#define __END_READ_DATA__
Definition: sensor_drv.h:77

Command definition to read the Accel + Mag Data (in 2 TXNs).

Definition at line 81 of file fxos8700_poll.c.

◆ FXOS8700_ACCELMAG_READ

const registerreadlist_t FXOS8700_ACCELMAG_READ[]
Initial value:
= {{.readFrom = FXOS8700_OUT_X_MSB, .numBytes = 12},
#define __END_READ_DATA__
Definition: sensor_drv.h:77

Command definition to read the Accel + Mag Data

Definition at line 77 of file fxos8700_poll.c.

◆ fxos8700_Config_Hybrid

const registerwritelist_t fxos8700_Config_Hybrid[]
Initial value:
= {
#define FXOS8700_M_CTRL_REG1_M_HMS_MASK
Definition: fxos8700.h:2573
#define FXOS8700_M_CTRL_REG1_M_ACAL_EN
Definition: fxos8700.h:2592
#define __END_WRITE_DATA__
Definition: sensor_drv.h:71
#define FXOS8700_M_CTRL_REG2_M_RST_CNT_DISABLE
Definition: fxos8700.h:2693
#define FXOS8700_CTRL_REG1_DR_HYBRID_25_HZ
Definition: fxos8700.h:1556
#define FXOS8700_M_CTRL_REG2_M_AUTOINC_MASK
Definition: fxos8700.h:2660
#define FXOS8700_M_CTRL_REG1_M_ACAL_MASK
Definition: fxos8700.h:2585
#define FXOS8700_M_CTRL_REG2_M_AUTOINC_HYBRID_MODE
Definition: fxos8700.h:2667
#define FXOS8700_M_CTRL_REG2_M_RST_CNT_MASK
Definition: fxos8700.h:2648
#define FXOS8700_CTRL_REG1_DR_MASK
Definition: fxos8700.h:1530
#define FXOS8700_M_CTRL_REG1_M_HMS_HYBRID_MODE
Definition: fxos8700.h:2621

Prepare the register write list to configure FXOS8700 in Hybrid mode.

Definition at line 63 of file fxos8700_poll.c.

◆ FXOS8700_STATUS_READ

const registerreadlist_t FXOS8700_STATUS_READ[] = {{.readFrom = FXOS8700_STATUS, .numBytes = 1}, __END_READ_DATA__}

Command definition to read the Data Ready Status

Definition at line 74 of file fxos8700_poll.c.