Core2 for AWS IoT EduKit BSP 1.5.1
Macros | Functions
i2c_device.c File Reference
#include "freertos/FreeRTOS.h"
#include "freertos/semphr.h"
#include "driver/i2c.h"
#include "esp_log.h"
#include "esp_err.h"
#include "i2c_device.h"

Macros

#define TAG   "I2C-DEVICE"
 
#define log_i(format...)
 
#define log_e(format...)
 
#define log_reg(buffer, buffer_len)
 
#define I2C_TIMEOUT_MS   (100)
 

Functions

I2CDevice_t i2c_malloc_device (i2c_port_t i2c_num, gpio_num_t sda, gpio_num_t scl, uint32_t freq, uint8_t device_addr)
 
void i2c_free_device (I2CDevice_t i2c_device)
 
BaseType_t i2c_take_port (i2c_port_t i2c_num, uint32_t timeout)
 
BaseType_t i2c_free_port (i2c_port_t i2c_num)
 
esp_err_t i2c_apply_bus (I2CDevice_t i2c_device)
 
esp_err_t i2c_free_bus (I2CDevice_t i2c_device)
 
esp_err_t i2c_read_bytes (I2CDevice_t i2c_device, uint32_t reg_addr, uint8_t *data, uint16_t length)
 
esp_err_t i2c_read_bytes_no_stop (I2CDevice_t i2c_device, uint32_t reg_addr, uint8_t *data, uint16_t length)
 
esp_err_t i2c_read_byte (I2CDevice_t i2c_device, uint32_t reg_addr, uint8_t *data)
 
esp_err_t i2c_read_bit (I2CDevice_t i2c_device, uint32_t reg_addr, uint8_t *data, uint8_t bit_pos)
 
esp_err_t i2c_read_bits (I2CDevice_t i2c_device, uint32_t reg_addr, uint8_t *data, uint8_t bit_pos, uint8_t bit_length)
 
esp_err_t i2c_write_bytes (I2CDevice_t i2c_device, uint32_t reg_addr, uint8_t *data, uint16_t length)
 
esp_err_t i2c_write_byte (I2CDevice_t i2c_device, uint32_t reg_addr, uint8_t data)
 
esp_err_t i2c_write_bit (I2CDevice_t i2c_device, uint32_t reg_addr, uint8_t data, uint8_t bit_pos)
 
esp_err_t i2c_write_bits (I2CDevice_t i2c_device, uint32_t reg_addr, uint8_t data, uint8_t bit_pos, uint8_t bit_length)
 
esp_err_t i2c_device_change_freq (I2CDevice_t i2c_device, uint32_t freq)
 
esp_err_t i2c_device_valid (I2CDevice_t i2c_device)
 

Macro Definition Documentation

◆ TAG

#define TAG   "I2C-DEVICE"

◆ log_i

#define log_i (   format...)

◆ log_e

#define log_e (   format...)

◆ log_reg

#define log_reg (   buffer,
  buffer_len 
)

◆ I2C_TIMEOUT_MS

#define I2C_TIMEOUT_MS   (100)

Function Documentation

◆ i2c_malloc_device()

I2CDevice_t i2c_malloc_device ( i2c_port_t  i2c_num,
gpio_num_t  sda,
gpio_num_t  scl,
uint32_t  freq,
uint8_t  device_addr 
)

◆ i2c_free_device()

void i2c_free_device ( I2CDevice_t  i2c_device)

◆ i2c_take_port()

BaseType_t i2c_take_port ( i2c_port_t  i2c_num,
uint32_t  timeout 
)

◆ i2c_free_port()

BaseType_t i2c_free_port ( i2c_port_t  i2c_num)

◆ i2c_apply_bus()

esp_err_t i2c_apply_bus ( I2CDevice_t  i2c_device)

◆ i2c_free_bus()

esp_err_t i2c_free_bus ( I2CDevice_t  i2c_device)

◆ i2c_read_bytes()

esp_err_t i2c_read_bytes ( I2CDevice_t  i2c_device,
uint32_t  reg_addr,
uint8_t *  data,
uint16_t  length 
)

◆ i2c_read_bytes_no_stop()

esp_err_t i2c_read_bytes_no_stop ( I2CDevice_t  i2c_device,
uint32_t  reg_addr,
uint8_t *  data,
uint16_t  length 
)

◆ i2c_read_byte()

esp_err_t i2c_read_byte ( I2CDevice_t  i2c_device,
uint32_t  reg_addr,
uint8_t *  data 
)

◆ i2c_read_bit()

esp_err_t i2c_read_bit ( I2CDevice_t  i2c_device,
uint32_t  reg_addr,
uint8_t *  data,
uint8_t  bit_pos 
)

◆ i2c_read_bits()

esp_err_t i2c_read_bits ( I2CDevice_t  i2c_device,
uint32_t  reg_addr,
uint8_t *  data,
uint8_t  bit_pos,
uint8_t  bit_length 
)

◆ i2c_write_bytes()

esp_err_t i2c_write_bytes ( I2CDevice_t  i2c_device,
uint32_t  reg_addr,
uint8_t *  data,
uint16_t  length 
)

◆ i2c_write_byte()

esp_err_t i2c_write_byte ( I2CDevice_t  i2c_device,
uint32_t  reg_addr,
uint8_t  data 
)

◆ i2c_write_bit()

esp_err_t i2c_write_bit ( I2CDevice_t  i2c_device,
uint32_t  reg_addr,
uint8_t  data,
uint8_t  bit_pos 
)

◆ i2c_write_bits()

esp_err_t i2c_write_bits ( I2CDevice_t  i2c_device,
uint32_t  reg_addr,
uint8_t  data,
uint8_t  bit_pos,
uint8_t  bit_length 
)

◆ i2c_device_change_freq()

esp_err_t i2c_device_change_freq ( I2CDevice_t  i2c_device,
uint32_t  freq 
)

◆ i2c_device_valid()

esp_err_t i2c_device_valid ( I2CDevice_t  i2c_device)