ISF  2.2 rev 5
Intelligent Sensing Framework for Kinetis with Processor Expert
isf.h File Reference

Main ISF header file. Contains code common to all ISF components. More...

#include "isf_types.h"
#include "isf_target.h"
Include dependency graph for isf.h:

Go to the source code of this file.

Data Structures

struct  version_info_t
 This structure holds the version information of device/lib/component /user application etc. More...
 
struct  build_info_t
 This structure holds the build information of device/lib/component /user application etc. More...
 
struct  isf_info_t
 
struct  device_info_t
 This structure holds the ROM device information such as device id and number of EmbApps present. This information is returned by the _fw_device_info_get() API. More...
 

Macros

#define MAX_ISF_APPLICATIONS   (32)
 Maximum number of applications. More...
 
#define APP_ID_NULL   (0)
 Null application ID. More...
 
#define MAX_ISF_COMMIT_ID_SIZE   (8)
 The maximum size of the ISF commit_id. More...
 
#define ISF_EMB_APPS_PRESENT   5
 The number of separate addressable apps in the build. More...
 
#define USER_APP_ID_START   (ISF_APP_ID_LAST)
 
#define ISF_TASK_INDEX_START   (50)
 ISF starting task index. More...
 

Typedefs

typedef int32 isf_status_t
 ISF return status type. More...
 
typedef uint32 isf_duration_t
 ISF time duration in microseconds. More...
 

Enumerations

enum  isf_status_enum { ISF_SUCCESS = 0, ISF_ERR_LIB_INIT = 1 }
 ISF library return status type. More...
 
enum  isf_app_type_enum {
  ISF_INVALID_APP = 0, ISF_MAILBOX_APP = 1, ISF_RLI_APP = 2, ISF_BASIC_APP = 3,
  ISF_EMB_APP = 4, ISF_APP_TYPE_DATALOGGER = 5, ISF_APP_TYPE_SENSOR_FUSION = 6, ISF_APP_TYPE_USER1 = 7,
  ISF_APP_TYPE_MAX = 128
}
 ISF Embedded Application types. More...
 
enum  isf_app_id_enum { ISF_APP_ID_DEV_INFO = 0, ISF_APP_ID_MBOX = 1, ISF_APP_ID_LAST }
 ISF application number. More...
 

Functions

isf_info_t isf_get_info (void)
 API to get ISF information. More...
 
isf_status_t isf_lib_init (void *pNull)
 API to get ISF information. More...
 
void _fw_device_info_get (device_info_t *info_ptr)
 
uint32 isf_time_util_get_usec (void)
 This API returns the time in microseconds. More...
 

Detailed Description

Main ISF header file. Contains code common to all ISF components.

Definition in file isf.h.

Macro Definition Documentation

#define APP_ID_NULL   (0)

Null application ID.

Value for null application ID.

Definition at line 103 of file isf.h.

Referenced by ci_qr_update(), and ci_update_first_data_mb().

#define ISF_EMB_APPS_PRESENT   5

The number of separate addressable apps in the build.

The number of addressable apps includes, when applicable, the Mailbox App, instances of BasicApp, EmbApp, and RLI Apps. This number is reported in the DeviceInfo Command response. Apps are numbered from 1. I.e., if three apps are present they will be numbered 1, 2, and 3. App 1 is almost always the mailbox app.

Definition at line 122 of file isf.h.

Referenced by _fw_device_info_get().

#define ISF_TASK_INDEX_START   (50)

ISF starting task index.

This define specifies the starting task index of ISF
tasks. The user should use task index that are LOWER than
the value stated here.

Definition at line 269 of file isf.h.

#define MAX_ISF_APPLICATIONS   (32)

Maximum number of applications.

The maximum number of applications that can exists. Note
that the application id can be anywhere between APP_ID_NULL and
NO_APP_FBID_INDX, but the maximum number of those applications
is limited to the value set here.

Definition at line 95 of file isf.h.

Referenced by ci_mbox_init().

#define MAX_ISF_COMMIT_ID_SIZE   (8)

The maximum size of the ISF commit_id.

The maximum size of the ISF commit_id from which build is made.

Definition at line 111 of file isf.h.

Referenced by isf_get_info().

#define USER_APP_ID_START   (ISF_APP_ID_LAST)

Definition at line 256 of file isf.h.

Typedef Documentation

ISF time duration in microseconds.

Definition at line 84 of file isf.h.

ISF return status type.

ISF general success status for API functions.
Any value not equal to ISF_SUCCESS is considered a
failure and the error is application specific. See
application API documentation for specific error
definitions.

Definition at line 76 of file isf.h.

Enumeration Type Documentation

ISF application number.

Enumerator
ISF_APP_ID_DEV_INFO 
ISF_APP_ID_MBOX 
ISF_APP_ID_LAST 

Definition at line 250 of file isf.h.

ISF Embedded Application types.

Enumerator
ISF_INVALID_APP 

ISF Application Type for Invalid Application.

ISF_MAILBOX_APP 

ISF Application Type for MailBox Application.

ISF_RLI_APP 

ISF Application Type for RLI Application.

ISF_BASIC_APP 

ISF Application Type for Basic Application.

ISF_EMB_APP 

ISF Application Type for Embedded Application.

ISF_APP_TYPE_DATALOGGER 

ISF Application Type for the DataLogger Application.

ISF_APP_TYPE_SENSOR_FUSION 

ISF Application Type for the Sensor Fusion Application.

ISF_APP_TYPE_USER1 

ISF Application Type for User Application1.

ISF_APP_TYPE_MAX 

MAX ISF APP Type.

Definition at line 44 of file isf.h.

ISF library return status type.

Enumerator
ISF_SUCCESS 

General ISF success status

ISF_ERR_LIB_INIT 

General library initialization failure status.

Definition at line 27 of file isf.h.

Function Documentation

void _fw_device_info_get ( device_info_t info_ptr)

Definition at line 77 of file isf.c.

References device_info_t::emb_apps_present, ISF_EMB_APPS_PRESENT, isf_get_info(), device_info_t::isf_info, and device_info_t::system_device_id.

Referenced by ci_mbox_init(), and isf_app_callback_dev_info().

Here is the call graph for this function:

Here is the caller graph for this function:

isf_info_t isf_get_info ( void  )

API to get ISF information.

The isf_get_info() function is called by an application that needs
retrieve ISF version and part number that the library is targeted for.

Returns
Pointer to isf_lib_info_t structure containing the
library information.
Errors:
Constraints:
Reentrant: No
Link Libraries:
isf_core.lib
See also

Definition at line 29 of file isf.c.

References isf_info_t::build_info, build_info_t::buildDay, build_info_t::buildHours, build_info_t::buildId, build_info_t::buildMinutes, build_info_t::buildMonth, build_info_t::buildSeconds, build_info_t::buildYear, ISF_BUILD_DAY, ISF_BUILD_HOURS, ISF_BUILD_MINUTES, ISF_BUILD_MONTH, ISF_BUILD_SECONDS, ISF_BUILD_YEAR, isf_commit_id, ISF_LIB_VERSION_MAJOR, ISF_LIB_VERSION_MINOR, version_info_t::majorVersion, MAX_ISF_COMMIT_ID_SIZE, version_info_t::minorVersion, and isf_info_t::version_info.

Referenced by _fw_device_info_get().

Here is the caller graph for this function:

isf_status_t isf_lib_init ( void *  pOptions)

API to get ISF information.

The isf_get_info() function is called by an application that needs
retrieve library version and part number that the library is targeted for.

Returns
ISF_SUCCESS if initialization was successful.
ISF_ERR_LIB_INIT if tasks were not created properly.
Errors:

Constraints:

Reentrant: No
Link Libraries:

See also

API to get ISF information.

Definition at line 18 of file isf_init.c.

Referenced by App1_task(), and BasicApp1_MainTask().

Here is the caller graph for this function:

uint32 isf_time_util_get_usec ( void  )

This API returns the time in microseconds.

This API call uses the RTOS services to calculate and return the elapsed time since the system started running. Note that if the elapsed time has exceeded a 32bit value, that is 2^32-1 or 4294.96 seconds, then the time elapsed will rollover and start at zero.

Returns
isf_time_util_get_usec() returns a value of type uint32 providing the number of microseconds since the system started running.
Constraints:
None
Reentrant: No
Link Libraries:
libisf_core.a

Definition at line 55 of file isf_util.c.

Referenced by Analog_1_fsl_Sensor_Generic_AnalogCallback(), Custom_1_fsl_Sensor_Custom_PeriodicCallback(), fsl_fxas21002_i2cspi_3D_gyro_PeriodicCallback(), fsl_fxls8471_i2cspi_3D_accel_PeriodicCallback(), fsl_fxls8952_i2c_3D_accel_PeriodicCallback(), fsl_fxos8700_i2cspi_6D_AccMag_PeriodicCallback(), fsl_mag3110_i2c_3D_mag_PeriodicCallback(), fsl_mma8491q_read_data_OneShotCallback(), fsl_mma865x_i2c_3D_accel_PeriodicCallback(), fsl_mma955x_PeriodicCallback(), fsl_mpl3115_i2c_1D_press_PeriodicCallback(), and isr_bm_callback_tmr().

Here is the caller graph for this function: