9 #ifndef _EMBEDDED_RPC__I2C_SLAVE_TRANSPORT_H_ 10 #define _EMBEDDED_RPC__I2C_SLAVE_TRANSPORT_H_ 12 #include "erpc_config_internal.h" 50 I2cSlaveTransport(I2C_Type *i2cBaseAddr, uint32_t baudRate, uint32_t srcClock_Hz);
93 virtual erpc_status_t underlyingReceive(uint8_t *data, uint32_t size)
override;
104 virtual erpc_status_t underlyingSend(
const uint8_t *data, uint32_t size)
override;
111 #endif // _EMBEDDED_RPC__I2C_SLAVE_TRANSPORT_H_ Semaphore m_txrxSemaphore
Definition: erpc_i2c_slave_transport.hpp:77
Base class for framed transport layers.
Definition: erpc_framed_transport.hpp:56
Very basic transport to send/receive messages via I2C.
Definition: erpc_i2c_slave_transport.hpp:40
enum _erpc_status erpc_status_t
Type used for all status and error return values.
Definition: erpc_common.h:85
void transfer_cb(void)
Function called from I2C_SlaveUserCallback when I2C transfer is completed.
Definition: erpc_i2c_slave_transport.cpp:95
virtual erpc_status_t underlyingReceive(MessageBuffer *message, uint32_t size, uint32_t offset)
Adds ability to framed transport to overwrite MessageBuffer when receiving data.
Definition: erpc_framed_transport.cpp:177
I2C_Type * m_i2cBaseAddr
Definition: erpc_i2c_slave_transport.hpp:72
uint32_t m_srcClock_Hz
Definition: erpc_i2c_slave_transport.hpp:74
Definition: erpc_arbitrated_client_manager.hpp:25
uint32_t m_baudRate
Definition: erpc_i2c_slave_transport.hpp:73
I2cSlaveTransport(I2C_Type *i2cBaseAddr, uint32_t baudRate, uint32_t srcClock_Hz)
Constructor.
Definition: erpc_i2c_slave_transport.cpp:147
virtual erpc_status_t underlyingSend(MessageBuffer *message, uint32_t size, uint32_t offset)
Adds ability to framed transport to overwrite MessageBuffer when sending data.
Definition: erpc_framed_transport.cpp:170
bool m_isInited
Definition: erpc_i2c_slave_transport.hpp:75
virtual ~I2cSlaveTransport(void)
Destructor.
Definition: erpc_i2c_slave_transport.cpp:157
virtual erpc_status_t init(void)
Initialize I2C peripheral configuration structure with values specified in I2cTransport constructor...
Definition: erpc_i2c_slave_transport.cpp:167
Simple semaphore class.
Definition: erpc_threading.h:442