43 #include "gpio_driver.h"    64     *(pWBuff) = offset & 0x7F; 
    65     *(pWBuff + 1) = offset & 0x80;
    81     *(pWBuff) = offset | 0x80; 
    82     *(pWBuff + 1) = offset & 0x80;
    85     memcpy(pWBuff + FXOS8700_SPI_CMD_LEN, pWritebuffer, size);
   101     if ((pSensorHandle == NULL) || (pBus == NULL) || (pSlaveSelect == NULL))
   122         pGPIODriver->
set_pin(pSlaveSelect);
   126         pGPIODriver->
clr_pin(pSlaveSelect);
   132     if ((ARM_DRIVER_OK != status) || (whoAmi != reg))
   155     if ((pSensorHandle == NULL) || (pRegWriteList == NULL))
   170     if (ARM_DRIVER_OK != status)
   178     if (ARM_DRIVER_OK != status)
   187     if (ARM_DRIVER_OK != status)
   202     if ((pSensorHandle == NULL) || (pReadList == NULL) || (pBuffer == NULL))
   216     if (ARM_DRIVER_OK != status)
   226     if (pSensorHandle == NULL)
   254     if ((pSensorHandle == NULL) || (pBus == NULL))
   265     if ((ARM_DRIVER_OK != status) || (whoAmi != reg))
   291     if ((pSensorHandle == NULL) || (pRegWriteList == NULL))
   306     if (ARM_DRIVER_OK != status)
   314     if (ARM_DRIVER_OK != status)
   323     if (ARM_DRIVER_OK != status)
   338     if ((pSensorHandle == NULL) || (pReadList == NULL) || (pBuffer == NULL))
   352     if (ARM_DRIVER_OK != status)
   362     if (pSensorHandle == NULL)
 #define FXOS8700_CTRL_REG1_ACTIVE_STANDBY_MODE
 
fpSpiWritePreprocessFn_t pWritePreprocessFN
 
The fxos8700_drv.h file describes the fxos8700 driver interface and structures. 
 
registeridlefunction_t idleFunction
 
#define FXOS8700_SPI_CMD_LEN
The size of the Sensor specific SPI Header. 
 
void FXOS8700_I2C_SetIdleTask(fxos8700_i2c_sensorhandle_t *pSensorHandle, registeridlefunction_t idleTask, void *userParam)
: The interface function to set the I2C Idle Task. 
 
registerDeviceInfo_t deviceInfo
 
void(* pin_init)(pinID_t aPinId, gpio_direction_t dir, void *apPinConfig, gpio_isr_handler_t aIsrHandler, void *apUserData)
 
ARM_DRIVER_SPI * pCommDrv
 
uint8_t fxos8700_spiRead_DataBuffer[FXOS8700_SPI_MAX_MSG_SIZE]
 
void FXOS8700_SPI_ReadPreprocess(void *pCmdOut, uint32_t offset, uint32_t size)
The SPI Read Pre-Process function to generate Sensor specific SPI Message Header. ...
 
ARM_DRIVER_I2C * pCommDrv
 
#define FXOS8700_SS_ACTIVE_VALUE
Is the Slave Select Pin Active Low or High. 
 
int32_t Sensor_I2C_Read(ARM_DRIVER_I2C *pCommDrv, registerDeviceInfo_t *devInfo, uint16_t slaveAddress, const registerreadlist_t *pReadList, uint8_t *pOutBuffer)
Read register data from a sensor. 
 
void(* registeridlefunction_t)(void *userParam)
This is the register idle function type. 
 
int32_t FXOS8700_SPI_Deinit(fxos8700_spi_sensorhandle_t *pSensorHandle)
The interface function to De Initialize sensor.. 
 
This defines the sensor specific information for I2C. 
 
uint8_t FXOS8700_WHO_AM_I_t
 
uint8_t fxos8700_spiWrite_CmdDataBuffer[FXOS8700_SPI_MAX_MSG_SIZE]
 
void FXOS8700_SPI_SetIdleTask(fxos8700_spi_sensorhandle_t *pSensorHandle, registeridlefunction_t idleTask, void *userParam)
: The interface function to set the SPI Idle Task. 
 
int32_t FXOS8700_I2C_Deinit(fxos8700_i2c_sensorhandle_t *pSensorHandle)
The interface function to De Initialize sensor.. 
 
spiSlaveSpecificParams_t slaveParams
 
#define FXOS8700_SPI_MAX_MSG_SIZE
The MAX size of SPI message. 
 
void(* set_pin)(pinID_t aPinId)
 
void(* clr_pin)(pinID_t aPinId)
 
#define FXOS8700_CTRL_REG1_ACTIVE_ACTIVE_MODE
 
int32_t FXOS8700_I2C_Initialize(fxos8700_i2c_sensorhandle_t *pSensorHandle, ARM_DRIVER_I2C *pBus, uint8_t index, uint16_t sAddress, uint8_t whoAmi)
The interface function to initialize the sensor. 
 
The SPI Slave Transfer Command Params SDK2.0 Driver. 
 
uint8_t fxos8700_spiRead_CmdBuffer[FXOS8700_SPI_MAX_MSG_SIZE]
 
#define SPI_SS_ACTIVE_LOW
 
int32_t FXOS8700_I2C_ReadData(fxos8700_i2c_sensorhandle_t *pSensorHandle, const registerreadlist_t *pReadList, uint8_t *pBuffer)
The interface function to read the sensor data. 
 
registerDeviceInfo_t deviceInfo
 
#define FXOS8700_CTRL_REG2_RST_MASK
 
GENERIC_DRIVER_GPIO * pGPIODriver
 
int32_t FXOS8700_SPI_ReadData(fxos8700_spi_sensorhandle_t *pSensorHandle, const registerreadlist_t *pReadList, uint8_t *pBuffer)
The interface function to read the sensor data. 
 
int32_t Sensor_SPI_Write(ARM_DRIVER_SPI *pCommDrv, registerDeviceInfo_t *devInfo, void *pWriteParams, const registerwritelist_t *pRegWriteList)
Write register data to a sensor. 
 
GENERIC_DRIVER_GPIO Driver_GPIO_KSDK
 
int32_t FXOS8700_I2C_Configure(fxos8700_i2c_sensorhandle_t *pSensorHandle, const registerwritelist_t *pRegWriteList)
The interface function to configure he sensor. 
 
Access structure of the GPIO Driver. 
 
int32_t Register_SPI_Read(ARM_DRIVER_SPI *pCommDrv, registerDeviceInfo_t *devInfo, void *pReadParams, uint8_t offset, uint8_t length, uint8_t *pOutBuffer)
The interface function to read a sensor register. 
 
int32_t Register_I2C_Read(ARM_DRIVER_I2C *pCommDrv, registerDeviceInfo_t *devInfo, uint16_t slaveAddress, uint8_t offset, uint8_t length, uint8_t *pOutBuffer)
The interface function to read a sensor register. 
 
void FXOS8700_SPI_WritePreprocess(void *pCmdOut, uint32_t offset, uint32_t size, void *pWritebuffer)
The SPI Write Pre-Process function to generate Sensor specific SPI Message Header. 
 
int32_t Register_I2C_Write(ARM_DRIVER_I2C *pCommDrv, registerDeviceInfo_t *devInfo, uint16_t slaveAddress, uint8_t offset, uint8_t value, uint8_t mask, bool repeatedStart)
The interface function to write a sensor register. 
 
int32_t FXOS8700_SPI_Initialize(fxos8700_spi_sensorhandle_t *pSensorHandle, ARM_DRIVER_SPI *pBus, uint8_t index, void *pSlaveSelect, uint8_t whoAmi)
The interface function to initialize the sensor. 
 
This defines the sensor specific information for SPI. 
 
This structure defines the Write command List. 
 
This structure defines the Read command List. 
 
#define FXOS8700_CTRL_REG1_ACTIVE_MASK
 
int32_t Sensor_SPI_Read(ARM_DRIVER_SPI *pCommDrv, registerDeviceInfo_t *devInfo, void *pReadParams, const registerreadlist_t *pReadList, uint8_t *pOutBuffer)
Read register data from a sensor. 
 
#define FXOS8700_CTRL_REG2_RST_EN
 
int32_t FXOS8700_SPI_Configure(fxos8700_spi_sensorhandle_t *pSensorHandle, const registerwritelist_t *pRegWriteList)
The interface function to configure he sensor. 
 
fpSpiReadPreprocessFn_t pReadPreprocessFN
 
int32_t Register_SPI_Write(ARM_DRIVER_SPI *pCommDrv, registerDeviceInfo_t *devInfo, void *pWriteParams, uint8_t offset, uint8_t value, uint8_t mask)
The interface function to write a sensor register. 
 
int32_t Sensor_I2C_Write(ARM_DRIVER_I2C *pCommDrv, registerDeviceInfo_t *devInfo, uint16_t slaveAddress, const registerwritelist_t *pRegWriteList)
Write register data to a sensor.