embedded-software
reusable software modules for embedded systems
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
i2c.h File Reference
#include "project_settings.h"
#include "hal_i2c.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_transaction
 

Macros

#define I2C_MAX_TX_SIZE   4
 
#define I2C_MAX_RX_SIZE   4
 
#define I2C_MAX_TRANSACTIONS   4
 
#define TRANSACTION_FAILED   1
 
#define TRANSACTION_SUCCESSFUL   0
 

Typedefs

typedef struct i2c_transaction i2c_transaction_t
 

Functions

void I2C_Init (i2c_settings_t *i2c_settings)
 
void I2C_Transact (i2c_transaction_t *transaction)
 
uint8_t I2C_Tx_Handler (uint8_t channel)
 
void I2C_Rx_Handler (uint8_t channel, uint8_t byte)
 
uint16_t I2C_GetSlaveAddress (uint8_t channel)
 
uint8_t I2C_GetTxByte (uint8_t channel)
 
uint8_t I2C_GetTxSize (uint8_t channel)
 
uint8_t I2C_GetRxSize (uint8_t channel)
 
uint8_t I2C_GetStayActive (uint8_t channel)
 
void I2C_TransactionSuccess (uint8_t channel)
 
void I2C_TransactionFail (uint8_t channel)
 
void hal_I2C_Init (i2c_settings_t *settings)
 
void hal_I2C_Enable (uint8_t channel)
 
void hal_I2C_Disable (uint8_t channel)
 
void hal_I2C_SendStart (uint8_t channel)
 
void hal_I2C_EnableInterrupts (uint8_t channel)
 
void hal_I2C_DisableInterrupts (uint8_t channel)
 

Macro Definition Documentation

#define I2C_MAX_RX_SIZE   4
#define I2C_MAX_TRANSACTIONS   4
#define I2C_MAX_TX_SIZE   4
#define TRANSACTION_FAILED   1
#define TRANSACTION_SUCCESSFUL   0

Typedef Documentation

Function Documentation

void hal_I2C_Disable ( uint8_t  channel)

Here is the caller graph for this function:

void hal_I2C_DisableInterrupts ( uint8_t  channel)
void hal_I2C_Enable ( uint8_t  channel)

Here is the caller graph for this function:

void hal_I2C_EnableInterrupts ( uint8_t  channel)

Here is the caller graph for this function:

void hal_I2C_Init ( i2c_settings_t settings)

Here is the call graph for this function:

Here is the caller graph for this function:

void hal_I2C_SendStart ( uint8_t  channel)

Here is the call graph for this function:

Here is the caller graph for this function:

uint8_t I2C_GetRxSize ( uint8_t  channel)

Here is the caller graph for this function:

uint16_t I2C_GetSlaveAddress ( uint8_t  channel)

Here is the caller graph for this function:

uint8_t I2C_GetStayActive ( uint8_t  channel)
uint8_t I2C_GetTxByte ( uint8_t  channel)

Here is the caller graph for this function:

uint8_t I2C_GetTxSize ( uint8_t  channel)

Here is the caller graph for this function:

void I2C_Init ( i2c_settings_t i2c_settings)

Here is the call graph for this function:

Here is the caller graph for this function:

void I2C_Rx_Handler ( uint8_t  channel,
uint8_t  byte 
)

Here is the caller graph for this function:

void I2C_Transact ( i2c_transaction_t transaction)

Here is the call graph for this function:

Here is the caller graph for this function:

void I2C_TransactionFail ( uint8_t  channel)

Here is the call graph for this function:

Here is the caller graph for this function:

void I2C_TransactionSuccess ( uint8_t  channel)

Here is the call graph for this function:

Here is the caller graph for this function:

uint8_t I2C_Tx_Handler ( uint8_t  channel)