MKM34Z256VLx7 Bare Metal Software Drivers  R4.1.6
Reference Manual
I2C API Specification

Overview

This section describes functions and macros of the driver's API.

Macros

#define I2C_StartSignal(module)
 Asserts Start condition on the bus. More...
 
#define I2C_StopSignal(module)
 Asserts Stop condition on the bus. More...
 
#define I2C_RepeatStartSignal(module)
 Asserts Repeat Start condition on the bus. More...
 
#define I2C_WrData(module, data)
 Writes data for transfer. More...
 
#define I2C_RdData(module)
 Returns data from last transfer. More...
 
#define I2C_GetTcFlag(module)
 Returns transfer complete flag. More...
 
#define I2C_GetIsrFlag(module)
 Returns state of the interrupt flag. More...
 
#define I2C_ClrIsrFlag(module)
 Clears interrupt flag. More...
 
#define I2C_SetRxMode(module)
 Sets RX mode. More...
 
#define I2C_SetTxMode(module)
 Sets TX mode. More...
 
#define I2C_SetNackMode(module)
 Sets NACK mode. More...
 
#define I2C_ClrNackMode(module)
 Clear NACK mode. More...
 
#define I2C_SetADDR(module, addr)
 Sets 7-bit I2C address. More...
 
#define I2C_GetRxakFlag(module)
 Returns RXAK flag. More...
 
#define I2C_GetBusyFlag(module)
 Returns BUSY flag. More...
 
#define I2C_Reset(module)
 Resets C1 register, but specified I2C module is still enabled. More...
 
#define I2C_GetStopfFlag(module)
 Returns bus stop detect flag. More...
 
#define I2C_ClrStopfFlag(module)
 Clears bus stop detect flag. More...
 
#define I2C_GetStartfFlag(module)
 Returns bus start detect flag. More...
 
#define I2C_ClrStartfFlag(module)
 Clears bus start detect flag. More...
 
#define I2C_GetErrorFlag(module)
 Returns ERROR flag. More...
 
#define I2C_GetEmptyFlag(module)
 Returns EMPTY flag. More...
 
#define I2C_InstallCallback(ip, callback)
 Installs callback function for vector 42. More...
 
#define I2C_Init(module, cfg)
 I2C initialization. More...
 

Macro Definition Documentation

#define I2C_StartSignal (   module)

This macro asserts Start condition on the bus.

Parameters
moduleI2C0,I2C1.
Note
Implemented as an inline macro.
See also
I2C_StopSignal, I2C_RepeatStartSignal
#define I2C_StopSignal (   module)

This macro asserts Stop condition on the bus.

Parameters
moduleI2C0,I2C1.
Note
Implemented as an inline macro.
See also
I2C_StartSignal
#define I2C_RepeatStartSignal (   module)

This macro asserts Repeat Start condition on the bus.

Parameters
moduleI2C0,I2C1.
Note
Implemented as an inline macro.
See also
I2C_StartSignal
#define I2C_WrData (   module,
  data 
)

This macro writes data to Data register for transfer start.

Parameters
moduleI2C0,I2C1.
datauint8 load register value.
Note
Implemented as an inline macro.
See also
I2C_RdData
#define I2C_RdData (   module)

This macro returns last received data from Data register.

Parameters
moduleI2C0,I2C1
Note
Implemented as an inline macro.
See also
I2C_WrData
#define I2C_GetTcFlag (   module)

This macro returns state of the transfer complete flag.

Parameters
moduleI2C0,I2C1.
Returns
true (non-zero) transfer complete,
false transfer in progress.
Note
Implemented as an inline macro.
#define I2C_GetIsrFlag (   module)

This macro returns state of the interrupt flag.

Parameters
moduleI2C0,I2C1.
Returns
true (non-zero) interrupt pending,
false no interrupt pending.
Note
Implemented as an inline macro.
See also
I2C_ClrIsrFlag
#define I2C_ClrIsrFlag (   module)

This macro clears interrupt flag.

Parameters
moduleI2C0,I2C1.
Note
Implemented as an inline macro.
See also
I2C_GetIsrFlag
#define I2C_SetRxMode (   module)

This macro sets RX mode.

Parameters
moduleI2C0,I2C1
Note
Implemented as an inline macro.
See also
I2C_SetTxMode
#define I2C_SetTxMode (   module)

This macro sets TX mode.

Parameters
moduleI2C0,I2C1.
Note
Implemented as an inline macro.
See also
I2C_SetRxMode
#define I2C_SetNackMode (   module)

This macro sets NACK mode.

Parameters
moduleI2C0,I2C1.
Note
Implemented as an inline macro.
#define I2C_ClrNackMode (   module)

This macro clear NACK mode.

Parameters
moduleI2C0,I2C1.
Note
Implemented as an inline macro.
#define I2C_SetADDR (   module,
  addr 
)

This macro sets 7-bit I2C address.

Parameters
moduleI2C0,I2C1.
addr7-bit address.
Note
Implemented as an inline macro.
#define I2C_GetRxakFlag (   module)

This macro returns state of the RXAK flag of the Status register.

Parameters
moduleI2C0,I2C1.
Returns
true (non-zero) flag asserted,
false flag cleared.
Note
Implemented as an inline macro.
#define I2C_GetBusyFlag (   module)

This macro returns state of the BUSY flag of the Status register.

Parameters
moduleI2C0,I2C1.
Returns
true (non-zero) flag asserted,
false flag cleared.
Note
Implemented as an inline macro.
#define I2C_Reset (   module)

This macro resets the specified I2C module while keeping it enabled.

Parameters
moduleI2C0,I2C1.
Note
Implemented as an inline macro.
#define I2C_GetStopfFlag (   module)

This macro returns bus stop detect flag.

Parameters
moduleI2C0,I2C1.
Returns
true (non-zero) flag asserted,
false flag cleared.
Note
Implemented as an inline macro.
#define I2C_ClrStopfFlag (   module)

This macro clears bus stop detect flag.

Parameters
moduleI2C0,I2C1.
Note
Implemented as an inline macro.
#define I2C_GetStartfFlag (   module)

this macro returns bus start detect flag.

Parameters
moduleI2C0,I2C1.
Returns
true (non-zero) flag asserted,
false flag cleared.
Note
Implemented as an inline macro.
#define I2C_ClrStartfFlag (   module)

This macro clears bus start detect flag.

Parameters
moduleI2C0,I2C1.
Note
Implemented as an inline macro.
#define I2C_GetErrorFlag (   module)

This macro returns state of the ERROR flag of the Status 2 register.

Parameters
moduleI2C0,I2C1.
Returns
true (non-zero) flag asserted,
false flag cleared.
Note
Implemented as an inline macro.
#define I2C_GetEmptyFlag (   module)

This macro returns state of the EMPTY flag of the Status 2 register.

Parameters
moduleI2C0,I2C1.
Returns
true (non-zero) flag asserted,
false flag cleared.
Note
Implemented as an inline macro.
#define I2C_InstallCallback (   ip,
  callback 
)

This function installs callback function for interrupt vector 42.

Parameters
ipSelect one of the ARM Cortex-M0+ Interrupt Priority Levels.
callbackPointer to the I2C Callback Function.
Note
Implemented as a function call.
Warning
I2C0 and I2C1 interrupt sources are OR'ed into single interrupt vector.
See also
I2C_Init
#define I2C_Init (   module,
  cfg 
)

This function initializes I2C module.

Parameters
moduleI2C0,I2C1.
cfgSelect one of the I2C Configuration Structures.
Note
Implemented as a function call.
See also
I2C_InstallCallback