![]() |
RZA Flexible Software Package Documentation
Release v1.1.0
|
|
Functions | |
fsp_err_t | R_RIIC_MASTER_Open (i2c_master_ctrl_t *const p_api_ctrl, i2c_master_cfg_t const *const p_cfg) |
fsp_err_t | R_RIIC_MASTER_Read (i2c_master_ctrl_t *const p_api_ctrl, uint8_t *const p_dest, uint32_t const bytes, bool const restart) |
fsp_err_t | R_RIIC_MASTER_Write (i2c_master_ctrl_t *const p_api_ctrl, uint8_t *const p_src, uint32_t const bytes, bool const restart) |
fsp_err_t | R_RIIC_MASTER_Abort (i2c_master_ctrl_t *const p_api_ctrl) |
fsp_err_t | R_RIIC_MASTER_SlaveAddressSet (i2c_master_ctrl_t *const p_api_ctrl, uint32_t const slave, i2c_master_addr_mode_t const addr_mode) |
fsp_err_t | R_RIIC_MASTER_Close (i2c_master_ctrl_t *const p_api_ctrl) |
fsp_err_t | R_RIIC_MASTER_CallbackSet (i2c_master_ctrl_t *const p_api_ctrl, void(*p_callback)(i2c_master_callback_args_t *), void const *const p_context, i2c_master_callback_args_t *const p_callback_memory) |
fsp_err_t | R_RIIC_MASTER_StatusGet (i2c_master_ctrl_t *const p_api_ctrl, i2c_master_status_t *p_status) |
Driver for the RIIC peripheral on RZ MPUs. This module implements the I2C Master Interface.
Data Structures | |
struct | iic_master_clock_settings_t |
struct | iic_master_instance_ctrl_t |
struct | riic_master_extended_cfg_t |
Enumerations | |
enum | iic_master_timeout_mode_t |
enum | iic_master_timeout_scl_low_t |
struct iic_master_clock_settings_t |
struct iic_master_instance_ctrl_t |
I2C control structure. DO NOT INITIALIZE.
struct riic_master_extended_cfg_t |
RIIC extended configuration
Data Fields | ||
---|---|---|
iic_master_timeout_mode_t | timeout_mode | Timeout Detection Time Select: Long Mode = 0 and Short Mode = 1. |
iic_master_timeout_scl_low_t | timeout_scl_low | Allows timeouts to occur when SCL is held low. |
iic_master_clock_settings_t | clock_settings | I2C Clock settings. |
uint8_t | noise_filter_stage | Noise Filter Stage Selection. |
IRQn_Type | naki_irq | NACK IRQ Number. |
IRQn_Type | sti_irq | Start condition IRQ Number. |
IRQn_Type | spi_irq | Stop condition IRQ Number. |
IRQn_Type | ali_irq | Arbitration lost IRQ Number. |
IRQn_Type | tmoi_irq | Timeout IRQ Number. |
fsp_err_t R_RIIC_MASTER_Open | ( | i2c_master_ctrl_t *const | p_api_ctrl, |
i2c_master_cfg_t const *const | p_cfg | ||
) |
Opens the I2C device.
FSP_SUCCESS | Requested clock rate was set exactly. |
FSP_ERR_ALREADY_OPEN | Module is already open. |
FSP_ERR_IP_CHANNEL_NOT_PRESENT | Channel is not available on this MCU. |
FSP_ERR_ASSERTION | Parameter check failure due to one or more reasons below:
|
fsp_err_t R_RIIC_MASTER_Read | ( | i2c_master_ctrl_t *const | p_api_ctrl, |
uint8_t *const | p_dest, | ||
uint32_t const | bytes, | ||
bool const | restart | ||
) |
Performs a read from the I2C device. The caller will be notified when the operation has completed (successfully) by an I2C_MASTER_EVENT_RX_COMPLETE in the callback.
FSP_SUCCESS | Function executed without issue. |
FSP_ERR_ASSERTION | p_api_ctrl, p_dest or bytes is NULL. |
FSP_ERR_IN_USE | Bus busy condition. Another transfer was in progress. |
FSP_ERR_NOT_OPEN | Handle is not initialized. Call R_RIIC_MASTER_Open to initialize the control block. |
fsp_err_t R_RIIC_MASTER_Write | ( | i2c_master_ctrl_t *const | p_api_ctrl, |
uint8_t *const | p_src, | ||
uint32_t const | bytes, | ||
bool const | restart | ||
) |
Performs a write to the I2C device. The caller will be notified when the operation has completed (successfully) by an I2C_MASTER_EVENT_TX_COMPLETE in the callback.
FSP_SUCCESS | Function executed without issue. |
FSP_ERR_ASSERTION | p_api_ctrl or p_src is NULL. |
FSP_ERR_IN_USE | Bus busy condition. Another transfer was in progress. |
FSP_ERR_NOT_OPEN | Handle is not initialized. Call R_RIIC_MASTER_Open to initialize the control block. |
fsp_err_t R_RIIC_MASTER_Abort | ( | i2c_master_ctrl_t *const | p_api_ctrl | ) |
Safely aborts any in-progress transfer and forces the RIIC peripheral into ready state.
FSP_SUCCESS | Channel was reset successfully. |
FSP_ERR_ASSERTION | p_api_ctrl is NULL. |
FSP_ERR_NOT_OPEN | Handle is not initialized. Call R_RIIC_MASTER_Open to initialize the control block. |
fsp_err_t R_RIIC_MASTER_SlaveAddressSet | ( | i2c_master_ctrl_t *const | p_api_ctrl, |
uint32_t const | slave, | ||
i2c_master_addr_mode_t const | addr_mode | ||
) |
Sets address and addressing mode of the slave device. This function is used to set the device address and addressing mode of the slave without reconfiguring the entire bus.
FSP_SUCCESS | Address of the slave is set correctly. |
FSP_ERR_ASSERTION | Pointer to control structure is NULL. |
FSP_ERR_IN_USE | Another transfer was in-progress. |
FSP_ERR_NOT_OPEN | Handle is not initialized. Call R_RIIC_MASTER_Open to initialize the control block. |
fsp_err_t R_RIIC_MASTER_Close | ( | i2c_master_ctrl_t *const | p_api_ctrl | ) |
Closes the I2C device. May power down RIIC peripheral. This function will safely terminate any in-progress I2C transfers.
FSP_SUCCESS | Device closed without issue. |
FSP_ERR_ASSERTION | p_api_ctrl is NULL. |
FSP_ERR_NOT_OPEN | Handle is not initialized. Call R_RIIC_MASTER_Open to initialize the control block. |
fsp_err_t R_RIIC_MASTER_CallbackSet | ( | i2c_master_ctrl_t *const | p_api_ctrl, |
void(*)(i2c_master_callback_args_t *) | p_callback, | ||
void const *const | p_context, | ||
i2c_master_callback_args_t *const | p_callback_memory | ||
) |
Updates the user callback and has option of providing memory for callback structure. Implements i2c_master_api_t::callbackSet
FSP_SUCCESS | Callback updated successfully. |
FSP_ERR_ASSERTION | A required pointer is NULL. |
FSP_ERR_NOT_OPEN | The control block has not been opened. |
FSP_ERR_NO_CALLBACK_MEMORY | p_callback is non-secure and p_callback_memory is either secure or NULL. |
fsp_err_t R_RIIC_MASTER_StatusGet | ( | i2c_master_ctrl_t *const | p_api_ctrl, |
i2c_master_status_t * | p_status | ||
) |
Provides driver status.
FSP_SUCCESS | Status stored in p_status. |
FSP_ERR_ASSERTION | NULL pointer. |