eRPC API Reference
Rev. 1.12.0
NXP Semiconductors
|
Very basic transport to send/receive messages via LPSPI. More...
#include <erpc_lpspi_slave_transport.hpp>
Public Member Functions | |
LPSpiSlaveTransport (LPSPI_Type *lpspiBaseAddr, uint32_t baudRate, uint32_t srcClock_Hz) | |
Constructor. More... | |
virtual | ~LPSpiSlaveTransport (void) |
Destructor. | |
virtual erpc_status_t | init (void) |
Initialize LPSPI peripheral configuration structure with values specified in LPSpiTransport constructor. More... | |
void | transfer_cb (void) |
Function called from LPSPI_SlaveUserCallback when LPSPI transfer is completed. More... | |
Public Member Functions inherited from erpc::FramedTransport | |
FramedTransport (void) | |
Constructor. | |
virtual | ~FramedTransport (void) |
FramedTransport destructor. | |
virtual uint8_t | reserveHeaderSize (void) override |
Size of data placed in MessageBuffer before serializing eRPC data. More... | |
virtual erpc_status_t | receive (MessageBuffer *message) override |
Receives an entire message. More... | |
virtual erpc_status_t | send (MessageBuffer *message) override |
Function to send prepared message. More... | |
virtual void | setCrc16 (Crc16 *crcImpl) override |
This functions sets the CRC-16 implementation. More... | |
virtual Crc16 * | getCrc16 (void) override |
This functions gets the CRC-16 object. More... | |
Public Member Functions inherited from erpc::Transport | |
Transport (void) | |
Constructor. | |
virtual | ~Transport (void) |
Transport destructor. | |
virtual bool | hasMessage (void) |
Poll for an incoming message. More... | |
Protected Attributes | |
LPSPI_Type * | m_lpspiBaseAddr |
uint32_t | m_baudRate |
uint32_t | m_srcClock_Hz |
bool | m_isInited |
Semaphore | m_txrxSemaphore |
Protected Attributes inherited from erpc::FramedTransport | |
Crc16 * | m_crcImpl |
Mutex | m_sendLock |
Mutex protecting send. | |
Mutex | m_receiveLock |
Mutex protecting receive. | |
Additional Inherited Members | |
Protected Member Functions inherited from erpc::FramedTransport | |
virtual erpc_status_t | underlyingSend (MessageBuffer *message, uint32_t size, uint32_t offset) |
Adds ability to framed transport to overwrite MessageBuffer when sending data. More... | |
virtual erpc_status_t | underlyingReceive (MessageBuffer *message, uint32_t size, uint32_t offset) |
Adds ability to framed transport to overwrite MessageBuffer when receiving data. More... | |
Very basic transport to send/receive messages via LPSPI.
LPSpiSlaveTransport::LPSpiSlaveTransport | ( | LPSPI_Type * | lpspiBaseAddr, |
uint32_t | baudRate, | ||
uint32_t | srcClock_Hz | ||
) |
Constructor.
[in] | lpspiBaseAddr | LPSPI peripheral base address. |
[in] | baudRate | Baudrate. |
[in] | srcClock_Hz | Source clock. |
|
virtual |
Initialize LPSPI peripheral configuration structure with values specified in LPSpiTransport constructor.
kErpcStatus_Success | Always returns success status. |
void LPSpiSlaveTransport::transfer_cb | ( | void | ) |
Function called from LPSPI_SlaveUserCallback when LPSPI transfer is completed.
Unblocks the send/receive function.
|
protected |
Base address of LPSPI peripheral used in this transport layer
|
protected |
Baud rate of LPSPI peripheral used in this transport layer
|
protected |
Source clock of LPSPI peripheral used in this transport layer
|
protected |
the LPSPI peripheral init status flag
|
protected |
Semaphore used by RTOS to block task until the sending/receiving is not complete