I2CSPMKit Drivers

Detailed Description

I2C Simple Polled Master driver.

This driver supports master mode, single bus-master only. It blocks while waiting for the transfer is complete, polling for completion in EM0.

Data Structures

struct  I2CSPM_Init_TypeDef




void I2CSPM_Init (I2CSPM_Init_TypeDef *init)
 Initalize I2C peripheral.
I2C_TransferReturn_TypeDef I2CSPM_Transfer (I2C_TypeDef *i2c, I2C_TransferSeq_TypeDef *seq)
 Perform I2C transfer.

Macro Definition Documentation

{ I2C0, /* Use I2C instance 0 */ \
gpioPortC, /* SCL port */ \
5, /* SCL pin */ \
gpioPortC, /* SDA port */ \
4, /* SDA pin */ \
0, /* Location */ \
0, /* Use currently configured reference clock */ \
I2C_FREQ_STANDARD_MAX, /* Set to standard rate */ \
i2cClockHLRStandard, /* Set to use 4:4 low/high duty cycle */ \

Default config for I2C init structure. The default may be overridden by a i2cspmconfig.h file.

Definition at line 80 of file i2cspm.h.

Referenced by BOARD_init().

Function Documentation

void I2CSPM_Init ( I2CSPM_Init_TypeDef init)

Initalize I2C peripheral.

This driver supports master mode only, single bus-master. In addition to configuring the I2C peripheral module, it also configures DK/STK specific setup in order to use the I2C bus.

[in]initPointer to I2C initialization structure

Definition at line 56 of file i2cspm.c.

References I2C_Init_TypeDef::clhr, CMU_ClockEnable(), cmuClock_HFPER, cmuClock_I2C0, I2C_Init_TypeDef::enable, I2C_Init_TypeDef::freq, GPIO_PinModeSet(), GPIO_PinOutClear(), GPIO_PinOutSet(), gpioModeWiredAndPullUp, I2C_Init(), I2CSPM_Init_TypeDef::i2cClhr, i2cInit(), I2CSPM_Init_TypeDef::i2cMaxFreq, I2CSPM_Init_TypeDef::i2cRefFreq, I2C_Init_TypeDef::master, I2CSPM_Init_TypeDef::port, I2CSPM_Init_TypeDef::portLocation, I2C_Init_TypeDef::refFreq, I2CSPM_Init_TypeDef::sclPin, I2CSPM_Init_TypeDef::sclPort, I2CSPM_Init_TypeDef::sdaPin, and I2CSPM_Init_TypeDef::sdaPort.

Referenced by BOARD_init(), BSP_initBoard(), i2cInit(), and sl_efpdrv_init().