libyggdrasil  v1.0.0
i2c.h File Reference

I2C abstraction implementation for Midgard. More...

#include <c/common/types.h>
#include <stm32f7xx_hal.h>
Include dependency graph for i2c.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  i2c_t
 I2C handle type. More...
 

Functions

C_LINKAGE bool yggdrasil_I2C_Init (i2c_t i2c)
 I2C initialization. More...
 
C_LINKAGE bool yggdrasil_I2C_Deinit (i2c_t i2c)
 I2C deinitialization. More...
 
C_LINKAGE void yggdrasil_I2C_Write (i2c_t i2c, u8 address, void *data, size_t size)
 I2C write. More...
 
C_LINKAGE void yggdrasil_I2C_WriteRegister (i2c_t i2c, u8 address, u8 reg, void *data, size_t size)
 I2C write register. More...
 
C_LINKAGE void yggdrasil_I2C_Read (i2c_t i2c, u8 address, void *data, size_t size)
 I2C read. More...
 
C_LINKAGE void yggdrasil_I2C_ReadRegister (i2c_t i2c, u8 address, u8 reg, void *data, size_t size)
 I2C read register. More...
 

Detailed Description

I2C abstraction implementation for Midgard.

Author
Fabian Weber, Nikolaij Saegesser

Function Documentation

◆ yggdrasil_I2C_Deinit()

C_LINKAGE bool yggdrasil_I2C_Deinit ( i2c_t  i2c)

I2C deinitialization.

Parameters
i2cI2C handel
Returns
Success
Success

◆ yggdrasil_I2C_Init()

C_LINKAGE bool yggdrasil_I2C_Init ( i2c_t  i2c)

I2C initialization.

Parameters
i2cI2C handel
Returns
Success
Success

◆ yggdrasil_I2C_Read()

C_LINKAGE void yggdrasil_I2C_Read ( i2c_t  i2c,
u8  address,
void *  data,
size_t  size 
)

I2C read.

Parameters
i2cI2C handle
addressI2C device address
[out]dataReceived data
sizeSize of the data to receive

◆ yggdrasil_I2C_ReadRegister()

C_LINKAGE void yggdrasil_I2C_ReadRegister ( i2c_t  i2c,
u8  address,
u8  reg,
void *  data,
size_t  size 
)

I2C read register.

Parameters
i2cI2C handle
addressI2C device address
regI2C device register address
[out]dataReceived data
sizeSize of the data to receive

◆ yggdrasil_I2C_Write()

C_LINKAGE void yggdrasil_I2C_Write ( i2c_t  i2c,
u8  address,
void *  data,
size_t  size 
)

I2C write.

Parameters
i2cI2C handle
addressI2C device address
dataData to transmit
sizeSize of the data to transmit

◆ yggdrasil_I2C_WriteRegister()

C_LINKAGE void yggdrasil_I2C_WriteRegister ( i2c_t  i2c,
u8  address,
u8  reg,
void *  data,
size_t  size 
)

I2C write register.

Parameters
i2cI2C handle
addressI2C device address
regI2C device register address
dataData to transmit
sizeSize of the data to transmit