Hardware Abstraction Layer for FreeRTOS
i2c.h File Reference
#include <stdint.h>
#include <stdbool.h>
#include <system.h>
#include <FreeRTOS.h>
#include <semphr.h>
#include <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.

Data Structures

struct  i2c_generic
 

Enumerations

enum  i2c_mode {
  I2C_SM, I2C_FM, I2C_FMP, I2C_HSM,
  i2C_UFM
}
 

Functions

struct i2c * i2c_init (uint32_t index, enum i2c_mode mode)
 
int32_t i2c_deinit (struct i2c *i2c)
 
int32_t i2c_send (struct i2c *i2c, uint16_t id, uint8_t *data, uint32_t len, TickType_t waittime)
 
int32_t i2c_recv (struct i2c *i2c, uint16_t id, uint8_t *data, uint32_t len, TickType_t waittime)
 
int32_t i2c_transfer (struct i2c *i2c, uint16_t id, uint8_t *sendData, uint32_t sendLen, uint8_t *recvData, uint32_t recvLen, TickType_t waittime)
 
int32_t i2c_sendISR (struct i2c *i2c, uint16_t id, uint8_t *data, uint32_t len)
 
int32_t i2c_recvISR (struct i2c *i2c, uint16_t id, uint8_t *data, uint32_t len)
 
int32_t i2c_transferISR (struct i2c *i2c, uint16_t id, uint8_t *sendData, uint32_t sendLen, uint8_t *recvData, uint32_t recvLen)