embedded-software
reusable software modules for embedded systems
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
accelerometer.c File Reference
#include <stdint.h>
#include "accelerometer.h"
#include "project_settings.h"
#include "task.h"
#include "i2c.h"
#include "hal_general.h"
Include dependency graph for accelerometer.c:

Data Structures

struct  accelerometer_data
 

Macros

#define GSCALE   2
 
#define MMA8452_ADDRESS   0x1D
 
#define WHO_AM_I   0x0D
 
#define DEVICE_FOUND   0x2A
 
#define CTRL_REG1   0x2A
 
#define XYZ_DATA_CFG   0x0E
 
#define OUT_X_MSB   0x01
 
#define I2C_CLOCK_SPEED   100000
 

Functions

int8_t Accelerometer_Init (uint16_t period, void(*callback)(float x, float y, float z))
 Initialize the accelerometer to read data at a period returning to a callback. More...
 
void Accelerometer_Deinit ()
 Deinitialize the accelerometer task scheduler. More...
 

Macro Definition Documentation

#define CTRL_REG1   0x2A
#define DEVICE_FOUND   0x2A
#define GSCALE   2
#define I2C_CLOCK_SPEED   100000
#define MMA8452_ADDRESS   0x1D
#define OUT_X_MSB   0x01
#define WHO_AM_I   0x0D
#define XYZ_DATA_CFG   0x0E