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

The pedometer_stepcount_mma8652.c file implements the ISSDK prdometer example using MMA8652 sensor as the acceleration source. 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 "pedometer.h"
#include "mma865x_drv.h"
Include dependency graph for pedometer_stepcount_mma8652.c:

Go to the source code of this file.

Macros

#define MMA865x_ACCEL_DATA_SIZE   (6) /* 2 byte X,Y,Z Axis Data each. */
 

Functions

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

Variables

const registerwritelist_t cMma865xConfigNormal []
 
const registerreadlist_t cMma865xDataReady [] = {{.readFrom = MMA865x_STATUS, .numBytes = 1}, __END_READ_DATA__}
 
const registerreadlist_t cMma865xOutputValues []
 

Detailed Description

The pedometer_stepcount_mma8652.c file implements the ISSDK prdometer example using MMA8652 sensor as the acceleration source.

The pedometer_stepcount_mma8652.c file implements the ISSDK MMA8652 sensor driver example demonstration for Motion Activated Pedometer.

Definition in file pedometer_stepcount_mma8652.c.

Macro Definition Documentation

◆ MMA865x_ACCEL_DATA_SIZE

#define MMA865x_ACCEL_DATA_SIZE   (6) /* 2 byte X,Y,Z Axis Data each. */

Definition at line 58 of file pedometer_stepcount_mma8652.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 MMA865x sensor driver.

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

Configure the MMA865x sensor driver with Non FIFO mode.

Initialize the pedometer

Configure the pedometer

Read the data ready status from MMA865x

Read the raw sensor data from the MMA865x.

Convert the raw sensor data for display to the debug port.

Execute the pedometer Algorithm

Definition at line 110 of file pedometer_stepcount_mma8652.c.

References mma865x_acceldata_t::accel, BOARD_BootClockRUN, BOARD_InitDebugConsole(), BOARD_InitPins(), data, I2C_S_DEVICE_INDEX, I2C_S_DRIVER, I2C_S_SIGNAL_EVENT, int32_t(), MMA8652_I2C_ADDR, MMA8652_WHOAMI_VALUE, MMA865x_ACCEL_DATA_SIZE, MMA865x_I2C_Configure(), MMA865x_I2C_Initialize(), MMA865x_I2C_ReadData(), MMA865x_I2C_SetIdleTask(), MMA865x_STATUS_ZYXDR_MASK, pedometer_configure(), pedometer_init(), pedometer_run(), rawData, SENSOR_ERROR_NONE, SMC, SMC_SetPowerModeWait(), pedometer_t::status, status, and pedometer_t::pedometer_status_tag::stepcount.

Here is the call graph for this function:

Variable Documentation

◆ cMma865xConfigNormal

const registerwritelist_t cMma865xConfigNormal[]
Initial value:

Prepare the register write list to configure MMA865x in Normal mode.

Definition at line 64 of file pedometer_stepcount_mma8652.c.

◆ cMma865xDataReady

const registerreadlist_t cMma865xDataReady[] = {{.readFrom = MMA865x_STATUS, .numBytes = 1}, __END_READ_DATA__}

Prepare the register read list to read the Data Ready Status from MMA865x.

Definition at line 74 of file pedometer_stepcount_mma8652.c.

◆ cMma865xOutputValues

const registerreadlist_t cMma865xOutputValues[]
Initial value:
= {{.readFrom = MMA865x_OUT_X_MSB, .numBytes = MMA865x_ACCEL_DATA_SIZE},
#define MMA865x_ACCEL_DATA_SIZE
#define __END_READ_DATA__
Definition: sensor_drv.h:77

Prepare the register read list to read the raw Accel data from MMA865x.

Definition at line 77 of file pedometer_stepcount_mma8652.c.