![]() |
ISF
2.2 rev 5
Intelligent Sensing Framework for Kinetis with Processor Expert
|
Data Structures | |
struct | fxos8700_ODR_Table_tag |
the structure defines the ODR table between Hybrid and normal mode of device operation. More... | |
struct | fxos8700_ConfigTable_tag |
the structure defines the configuration table. More... | |
struct | fxos8700_DataBuffer_t |
This structure defines the dummy DSA data buffer format. More... | |
Macros | |
#define | FXOS8700_WHO_AM_I_VALUE1 0xC7 |
FXOS8700 expected WHO_AM_I value. More... | |
#define | FXOS8700_WHO_AM_I_VALUE2 0xC9 |
#define | FXOS8700_WHO_AM_I_VALUE3 0xCA |
Typedefs | |
typedef int32 | fxos8700_Status_t |
FXOS8700 internal return codes. More... | |
typedef enum fxos8700_Power_tag | fxos8700_Power_t |
Enumeration for the FXOS8700 power modes. More... | |
typedef enum fxos8700_InternalState_tag | fxos8700_InternalState_t |
Enumeration for the FXOS8700 driver internal states. More... | |
typedef enum fxos8700_Mode_tag | fxos8700_Mode_t |
The enumeration, fxos8700_Mode_tag, defines the operational modes of the FXOS8700. More... | |
typedef enum fxos8700_Range_tag | fxos8700_Range_t |
The enumeration, fxos8700_Range_tag, defines the acceleration range of the FXOS8700. More... | |
typedef enum fxos8700_Resolution_tag | fxos8700_Resolution_t |
The enumeration, fxos8700_Resolution_tag, defines the bit resolution of the FXOS8700. More... | |
typedef struct fxos8700_ODR_Table_tag | fxo8700_ODR_Table_t |
the structure defines the ODR table between Hybrid and normal mode of device operation. More... | |
typedef struct fxos8700_ConfigTable_tag | fxos8700_ConfigTable_t |
the structure defines the configuration table. More... | |
Functions | |
isf_dsa_status_t | fsl_fxos8700_i2cspi_6D_AccMag_Initialize (isf_SensorHandle_t *pSensorHandle) |
This is the concrete implementation of the FXOS8700 sensor adapter initialization. More... | |
isf_dsa_status_t | fsl_fxos8700_i2cspi_6D_AccMag_ValidateSettings (isf_SensorHandle_t *pSensorHandle, isf_dsa_SensorSettings_t *pSensorSettings) |
This is the concrete implementation of the FXOS8700 sensor adapter for validating current settings. More... | |
isf_dsa_status_t | fsl_fxos8700_i2cspi_6D_AccMag_Configure (isf_SensorHandle_t *pSensorHandle, isf_dsa_SensorSettings_t *pSensorSettings) |
This is the concrete implementation of the FXOS8700 sensor adapter for configuration. More... | |
isf_dsa_status_t | fsl_fxos8700_i2cspi_6D_AccMag_StartData (isf_SensorHandle_t *pSensorHandle) |
This is the concrete implementation of the FXOS8700 sensor adapter for start Data. More... | |
isf_dsa_status_t | fsl_fxos8700_i2cspi_6D_AccMag_EndData (isf_SensorHandle_t *pSensorHandle) |
This is the concrete implementation of the FXOS8700 sensor adapter for End Data. More... | |
isf_dsa_status_t | fsl_fxos8700_i2cspi_6D_AccMag_Calibrate (isf_SensorHandle_t *pSensorHandle, void *pCalData) |
This is the concrete implementation of the FXOS8700 sensor adapter for calibration . More... | |
isf_dsa_status_t | fsl_fxos8700_i2cspi_6D_AccMag_Shutdown (isf_SensorHandle_t *pSensorHandle) |
This is the concrete implementation of the FXOS8700 sensor adapter for shutdown . More... | |
isf_dsa_status_t | fsl_fxos8700_i2cspi_6D_AccMag_Convert (volatile isf_SensorHandle_t *pSensorHandle, isf_SensorDataTypes_t convertToType, isf_dsa_result_types_t resultType, void *nativeSample, void *convertedSample, int32 *numBytes) |
This function coverts the raw sample data to the desired output type. More... | |
void | fsl_fxos8700_i2cspi_6D_AccMag_PeriodicCallback (void *pSensorHandle) |
The callback function for the Bus Manager(BM). More... | |
Variables | |
isf_SensorTypes_t | fxos8700_SupportedSensorTypes [] |
Supported sensor and data types for fxos8700. More... | |
isf_SensorDataTypes_t | fxos8700_SupportedDataTypes [] |
#define FXOS8700_WHO_AM_I_VALUE1 0xC7 |
FXOS8700 expected WHO_AM_I value.
Definition at line 24 of file fsl_fxos8700_i2cspi_6D_AccMag.h.
Referenced by fsl_fxos8700_i2cspi_6D_AccMag_Initialize().
#define FXOS8700_WHO_AM_I_VALUE2 0xC9 |
Definition at line 25 of file fsl_fxos8700_i2cspi_6D_AccMag.h.
Referenced by fsl_fxos8700_i2cspi_6D_AccMag_Initialize().
#define FXOS8700_WHO_AM_I_VALUE3 0xCA |
Definition at line 26 of file fsl_fxos8700_i2cspi_6D_AccMag.h.
Referenced by fsl_fxos8700_i2cspi_6D_AccMag_Initialize().
typedef struct fxos8700_ODR_Table_tag fxo8700_ODR_Table_t |
the structure defines the ODR table between Hybrid and normal mode of device operation.
typedef struct fxos8700_ConfigTable_tag fxos8700_ConfigTable_t |
the structure defines the configuration table.
typedef enum fxos8700_InternalState_tag fxos8700_InternalState_t |
Enumeration for the FXOS8700 driver internal states.
typedef enum fxos8700_Mode_tag fxos8700_Mode_t |
The enumeration, fxos8700_Mode_tag, defines the operational modes of the FXOS8700.
typedef enum fxos8700_Power_tag fxos8700_Power_t |
Enumeration for the FXOS8700 power modes.
typedef enum fxos8700_Range_tag fxos8700_Range_t |
The enumeration, fxos8700_Range_tag, defines the acceleration range of the FXOS8700.
typedef enum fxos8700_Resolution_tag fxos8700_Resolution_t |
The enumeration, fxos8700_Resolution_tag, defines the bit resolution of the FXOS8700.
typedef int32 fxos8700_Status_t |
FXOS8700 internal return codes.
Definition at line 32 of file fsl_fxos8700_i2cspi_6D_AccMag.h.
enum fxos8700_Error_tag |
Enumeration for the FXOS8700 internal error codes.
Enumerator | |
---|---|
FXOS8700_ERROR_WHOAMI |
Error occurred while reading FXOS8700_WHO_AM_I or the value was incorrect. |
FXOS8700_ERROR_WAITFORACTIVE |
Error occurred while attempting to put device into active mode. |
FXOS8700_ERROR_BURSTWRITE |
Error occurred while attempting to write a block of memory to the device. |
FXOS8700_ERROR_CONFIG |
Error occurred while attempting to configure the device. |
FXOS8700_ERROR_SETPOWER |
Error occurred while attempting to set the power mode of the device. |
FX0S8700_ERRO_WRITE |
Error occurred while attempting to write the registers directly. |
FX0S8700_ERRO_READ |
Error occurred while attempting to read the registers directly. |
Definition at line 36 of file fsl_fxos8700_i2cspi_6D_AccMag.h.
Enumeration for the FXOS8700 driver internal states.
Definition at line 55 of file fsl_fxos8700_i2cspi_6D_AccMag.h.
enum fxos8700_Mode_tag |
The enumeration, fxos8700_Mode_tag, defines the operational modes of the FXOS8700.
Enumerator | |
---|---|
FXOS8700_MODE_ACCELEROMETER | |
FXOS8700_MODE_MAGNETOMETER | |
FXOS8700_MODE_HYBRID | |
FXOS8700_MODE_EXTEND |
Definition at line 63 of file fsl_fxos8700_i2cspi_6D_AccMag.h.
enum fxos8700_Power_tag |
Enumeration for the FXOS8700 power modes.
Enumerator | |
---|---|
FXOS8700_POWER_STANDBY |
Device in Standby mode. Less power consumption during the mode. |
FXOS8700_POWER_ACTIVE |
Device in active mode. |
Definition at line 48 of file fsl_fxos8700_i2cspi_6D_AccMag.h.
enum fxos8700_Range_tag |
The enumeration, fxos8700_Range_tag, defines the acceleration range of the FXOS8700.
Enumerator | |
---|---|
FXOS8700_RANGE_2G | |
FXOS8700_RANGE_4G | |
FXOS8700_RANGE_8G | |
FXOS8700_RANGE_MAX |
Definition at line 73 of file fsl_fxos8700_i2cspi_6D_AccMag.h.
The enumeration, fxos8700_Resolution_tag, defines the bit resolution of the FXOS8700.
Enumerator | |
---|---|
FXOS8700_RESOLUTION_8_BIT | |
FXOS8700_RESOLUTION_NORMAL |
Definition at line 80 of file fsl_fxos8700_i2cspi_6D_AccMag.h.
isf_dsa_status_t fsl_fxos8700_i2cspi_6D_AccMag_Calibrate | ( | isf_SensorHandle_t * | pSensorHandle, |
void * | pCalData | ||
) |
This is the concrete implementation of the FXOS8700 sensor adapter for calibration .
The FXAS21000 does not provide the capability to be dynamically calibrated. Therefore, this function simply returns success.
[in] | pSensorHandle | This is a pointer to the instance of the FXOS8700 sensor adapter. |
[in] | pCalData | This is a void pointer to the instance of the FXOS8700 calibration data. |
ISF_SUCCESS | is returned when the device is calibrated properly. Note: Currently, there is no return error type defined for this API. |
Definition at line 544 of file fsl_fxos8700_i2cspi_6D_AccMag.c.
References ISF_SUCCESS.
isf_dsa_status_t fsl_fxos8700_i2cspi_6D_AccMag_Configure | ( | isf_SensorHandle_t * | pSensorHandle, |
isf_dsa_SensorSettings_t * | pSensorSettings | ||
) |
This is the concrete implementation of the FXOS8700 sensor adapter for configuration.
This function resets the sensor, applies the settings, and registers a callback with the Bus Manager(BM) timer. It does not yet start the timer, as this is done by fsl_fxos8700_i2cspi_6D_AccMag_StartData().
[in] | pSensorHandle | This is a pointer to the instance of the FXAS21000 sensor adapter. |
[in] | pSensorSettings | The reference to the sensor configuration settings. |
ISF_SUCCESS | is returned when the device is configured successfully. |
DSA_ERR_CONFIGURE | is returned when the provided configuration settings could not be applied. |
Definition at line 282 of file fsl_fxos8700_i2cspi_6D_AccMag.c.
References isf_SensorHandle_st::adapterStatus, BM_ERROR, bm_register_periodic_callback(), DeviceDescriptor_struct::cDescriptor, isf_SensorHandle_st::controlData, DeviceDescriptor_struct::deviceHandle, DeviceDescriptor_struct::deviceSemaphore, dm_channel_acquire_lock(), dm_channel_release_lock(), dm_device_read(), dm_device_write(), DSA_ERR_CONFIGURE, DSA_ERR_PARAM, DSA_STATE_CONFIGURED_STOPPED, DSA_STATE_INITIALIZED, fsl_fxos8700_i2cspi_6D_AccMag_PeriodicCallback(), FXOS8700_ACTIVE_MASK, FXOS8700_CTRL_REG1, FXOS8700_SET_FIELD, GET_ODR_CONFIG, ISF_SUCCESS, fxos8700_Sensor_Specific_Settings_t::mode, isf_dsa_SensorSettings_st::nSamplePeriod, isf_SensorHandle_st::pDeviceDescriptor, SensorConfig_st::pSensorSpecificSettings, isf_SensorHandle_st::pSensorStaticConfig, fxos8700_Sensor_Specific_Reg_t::regAddr, fxos8700_Sensor_Specific_Settings_t::regCount, fxos8700_Sensor_Specific_Settings_t::regPairs, fxos8700_Sensor_Specific_Reg_t::regValue, isf_dsa_ControlData_st::sensorSettings, and DeviceDescriptor_struct::token.
isf_dsa_status_t fsl_fxos8700_i2cspi_6D_AccMag_Convert | ( | volatile isf_SensorHandle_t * | pSensorHandle, |
isf_SensorDataTypes_t | convertToType, | ||
isf_dsa_result_types_t | resultType, | ||
void * | nativeSample, | ||
void * | convertedSample, | ||
int32 * | numBytes | ||
) |
This function coverts the raw sample data to the desired output type.
Definition at line 735 of file fsl_fxos8700_i2cspi_6D_AccMag.c.
References DSA_ERR_BAD_RESULT_TYPE, DSA_ERR_BAD_SENSOR_DATA_TYPE, DSA_RESULT_TYPE_ENG_FIXED, DSA_RESULT_TYPE_ENG_FLOAT, DSA_RESULT_TYPE_RAW_COUNTS, SensorConfig_st::pSensorSpecificSettings, isf_SensorHandle_st::pSensorStaticConfig, TYPE_MAGNETIC_FIELD_STRENGTH_3D, and TYPE_RAW_ACCELERATION_3D.
Referenced by fsl_fxos8700_i2cspi_6D_AccMag_PeriodicCallback().
isf_dsa_status_t fsl_fxos8700_i2cspi_6D_AccMag_EndData | ( | isf_SensorHandle_t * | pSensorHandle | ) |
This is the concrete implementation of the FXOS8700 sensor adapter for End Data.
This function tells the Bus Manager to stop the callbacks and disable data collection.
[in] | pSensorHandle | This is a pointer to the instance of the FXOS8700 sensor adapter. |
ISF_SUCCESS | is returned when the data collection stopped successfully. |
DSA_ERR_PARAM | is returned when a wrong parameter is passed into the function such as an invalid or NULL parameter. |
Definition at line 478 of file fsl_fxos8700_i2cspi_6D_AccMag.c.
References isf_SensorHandle_st::adapterStatus, BM_ERROR, bm_stop(), DeviceDescriptor_struct::deviceHandle, DeviceDescriptor_struct::deviceSemaphore, DSA_ERR_END_DATA, DSA_ERR_PARAM, DSA_STATE_CONFIGURED_STARTED, DSA_STATE_CONFIGURED_STOPPED, FXOS8700_POWER_STANDBY, ISF_SUCCESS, isf_SensorHandle_st::pDeviceDescriptor, and DeviceDescriptor_struct::token.
isf_dsa_status_t fsl_fxos8700_i2cspi_6D_AccMag_Initialize | ( | isf_SensorHandle_t * | pSensorHandle | ) |
This is the concrete implementation of the FXOS8700 sensor adapter initialization.
This function allocates memory for the device descriptor.
[in] | pSensorHandle | This is a void pointer to the instance of the FXOS8700 sensor adapter. |
ISF_SUCCESS | is returned when the device is initialized properly. |
DSA_ERR_PARAM | is returned when a wrong parameter was passed into the function, i.e. an invalid or NULL parameter. |
DSA_ERR_INITIALIZE | is returned when the driver could not be initialized successfully. |
Definition at line 151 of file fsl_fxos8700_i2cspi_6D_AccMag.c.
References fxos8700_DataBuffer_t::accel, isf_SensorHandle_st::adapterStatus, DeviceDescriptor_struct::cDescriptor, SensorConfig_st::channelId, COMM_STATE_OK, SensorConfig_st::commInfo, DeviceDescriptor_struct::deviceHandle, DeviceDescriptor_struct::deviceSemaphore, dm_channel_get_state(), dm_channel_init(), dm_channel_start(), dm_device_open(), DSA_ERR_INITIALIZE, DSA_ERR_PARAM, DSA_STATE_INITIALIZED, DSA_STATE_NOT_INITIALIZED, FXOS8700_WHO_AM_I_VALUE1, FXOS8700_WHO_AM_I_VALUE2, FXOS8700_WHO_AM_I_VALUE3, ISF_SUCCESS, fxos8700_DataBuffer_t::mag, DeviceDescriptor_struct::pCurrentSample, isf_SensorHandle_st::pDeviceDescriptor, isf_SensorHandle_st::pSensorStaticConfig, DeviceDescriptor_struct::skipFramecnt, and fxos8700_DataBuffer_t::timeStamp.
void fsl_fxos8700_i2cspi_6D_AccMag_PeriodicCallback | ( | void * | pSensorHandle | ) |
The callback function for the Bus Manager(BM).
The Bus Manager calls this function periodically based on the period configured for the FXOS8700.
[in] | pSensorHandle | This is a void pointer to the instance of the FXOS8700 sensor adapter. |
Definition at line 587 of file fsl_fxos8700_i2cspi_6D_AccMag.c.
References fxos8700_DataBuffer_t::accel, isf_SensorHandle_st::adapterStatus, isf_SensorHandle_st::controlData, DeviceDescriptor_struct::deviceHandle, DeviceDescriptor_struct::deviceSemaphore, dm_device_read(), DSA_STATE_CONFIGURED_STARTED, fsl_fxos8700_i2cspi_6D_AccMag_Convert(), FXOS8700_M_OUT_X_MSB, FXOS8700_MODE_ACCELEROMETER, FXOS8700_MODE_HYBRID, FXOS8700_MODE_MAGNETOMETER, FXOS8700_OUT_X_MSB, isf_fifo_el_get_insert_pointer(), isf_fifo_el_increment(), ISF_FIFO_FULL, isf_fifo_lock(), isf_fifo_unlock(), isf_swap2byte(), isf_time_util_get_usec(), fxos8700_DataBuffer_t::mag, isf_dsa_ControlData_st::nEventFieldIndex, DeviceDescriptor_struct::pCurrentSample, isf_SensorHandle_st::pDeviceDescriptor, isf_dsa_ControlData_st::pEventGroup, isf_dsa_SensorSettings_st::pSampleBufferInfo, SensorConfig_st::pSensorSpecificSettings, isf_SensorHandle_st::pSensorStaticConfig, isf_dsa_SensorSettings_st::resultFormat, isf_dsa_SensorSettings_st::resultType, isf_dsa_ControlData_st::sensorSettings, DeviceDescriptor_struct::skipFramecnt, fxos8700_DataBuffer_t::timeStamp, and TYPE_NATIVE_SENSOR_DATA_TYPE.
Referenced by fsl_fxos8700_i2cspi_6D_AccMag_Configure().
isf_dsa_status_t fsl_fxos8700_i2cspi_6D_AccMag_Shutdown | ( | isf_SensorHandle_t * | pSensorHandle | ) |
This is the concrete implementation of the FXOS8700 sensor adapter for shutdown .
[in] | pSensorHandle | This is a pointer to the instance of the FXOS8700 sensor adapter. |
ISF_SUCCESS | is returned when the device is calibrated properly. Note: Currently, there is no return error type defined for this API. |
Definition at line 561 of file fsl_fxos8700_i2cspi_6D_AccMag.c.
References isf_SensorHandle_st::adapterStatus, bm_unregister_callback(), DSA_ERR_PARAM, DSA_STATE_INITIALIZED, ISF_SUCCESS, isf_SensorHandle_st::pDeviceDescriptor, and DeviceDescriptor_struct::token.
isf_dsa_status_t fsl_fxos8700_i2cspi_6D_AccMag_StartData | ( | isf_SensorHandle_t * | pSensorHandle | ) |
This is the concrete implementation of the FXOS8700 sensor adapter for start Data.
This function tells the Bus Manager to start the callbacks periodically as defined in the bus configuration and enable the data collection.
[in] | pSensorHandle | This is a pointer to the instance of the FXOS8700 sensor adapter. |
ISF_SUCCESS | is returned when the data collection callback triggered successfully. |
DSA_ERR_PARAM | is returned when a wrong parameter is passed into the function such as an invalid or NULL parameter. |
Definition at line 411 of file fsl_fxos8700_i2cspi_6D_AccMag.c.
References isf_SensorHandle_st::adapterStatus, BM_ERROR, bm_start(), DeviceDescriptor_struct::deviceHandle, DeviceDescriptor_struct::deviceSemaphore, DSA_ERR_PARAM, DSA_ERR_START_DATA, DSA_STATE_CONFIGURED_STARTED, DSA_STATE_CONFIGURED_STOPPED, FALSE, FXOS8700_POWER_ACTIVE, ISF_SUCCESS, fxos8700_Sensor_Specific_Settings_t::mode, isf_SensorHandle_st::pDeviceDescriptor, SensorConfig_st::pSensorSpecificSettings, isf_SensorHandle_st::pSensorStaticConfig, and DeviceDescriptor_struct::token.
isf_dsa_status_t fsl_fxos8700_i2cspi_6D_AccMag_ValidateSettings | ( | isf_SensorHandle_t * | pSensorHandle, |
isf_dsa_SensorSettings_t * | pSensorSettings | ||
) |
This is the concrete implementation of the FXOS8700 sensor adapter for validating current settings.
This function is responsible for validating the current settings and if the current settings are not valid settings, it provides the best suitable settings.
[in] | pSensorHandle | This is a pointer to the instance of the FXOS8700 sensor adapter. |
[in] | pSensorSettings | The reference to the sensor settings. |
ISF_SUCCESS | is returned when the device settings are successfully validated. |
DSA_RET_SETTINGS_CHANGED | is returned when the current settings have been changed. |
Definition at line 241 of file fsl_fxos8700_i2cspi_6D_AccMag.c.
References DSA_ERR_PARAM, DSA_RET_SETTINGS_CHANGED, GET_ODR_VALUE, ISF_SUCCESS, fxos8700_Sensor_Specific_Settings_t::mode, isf_dsa_SensorSettings_st::nSamplePeriod, SensorConfig_st::pSensorSpecificSettings, and isf_SensorHandle_st::pSensorStaticConfig.
isf_SensorDataTypes_t fxos8700_SupportedDataTypes[] |
Definition at line 54 of file fsl_fxos8700_i2cspi_6D_AccMag.c.
isf_SensorTypes_t fxos8700_SupportedSensorTypes[] |
Supported sensor and data types for fxos8700.
Supported sensor and data types for fxos8700.
Definition at line 53 of file fsl_fxos8700_i2cspi_6D_AccMag.c.