eRPC API Reference  Rev. 1.7.2
NXP Semiconductors
erpc_spi_slave_transport.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2014-2016, Freescale Semiconductor, Inc.
3  * Copyright 2016 NXP
4  * All rights reserved.
5  *
6  *
7  * SPDX-License-Identifier: BSD-3-Clause
8  */
9 
10 #ifndef _EMBEDDED_RPC__SPI_SLAVE_TRANSPORT_H_
11 #define _EMBEDDED_RPC__SPI_SLAVE_TRANSPORT_H_
12 
13 #include "erpc_framed_transport.h"
14 #include "fsl_gpio.h"
15 #include "fsl_spi.h"
16 #include <stdlib.h>
17 
24 // Classes
27 
28 namespace erpc {
35 {
36 public:
44  SpiSlaveTransport(SPI_Type *spiBaseAddr, uint32_t baudRate, uint32_t srcClock_Hz);
45 
49  virtual ~SpiSlaveTransport(void);
50 
56  virtual erpc_status_t init(void);
57 
58 protected:
59  SPI_Type *m_spiBaseAddr;
60  uint32_t m_baudRate;
61  uint32_t m_srcClock_Hz;
62  bool m_isInited;
64 private:
74  virtual erpc_status_t underlyingReceive(uint8_t *data, uint32_t size);
75 
85  virtual erpc_status_t underlyingSend(const uint8_t *data, uint32_t size);
86 };
87 
88 } // namespace erpc
89 
92 #endif // _EMBEDDED_RPC__SPI_SLAVE_TRANSPORT_H_
bool m_isInited
Definition: erpc_spi_slave_transport.h:62
int32_t erpc_status_t
Type used for all status and error return values.
Definition: erpc_common.h:86
Base class for framed transport layers.
Definition: erpc_framed_transport.h:54
uint32_t m_srcClock_Hz
Definition: erpc_spi_slave_transport.h:61
Very basic transport to send/receive messages via SPI.
Definition: erpc_spi_slave_transport.h:34
Definition: erpc_arbitrated_client_manager.h:25
SPI_Type * m_spiBaseAddr
Definition: erpc_spi_slave_transport.h:59
virtual erpc_status_t init(void)
Initialize SPI peripheral configuration structure with values specified in SpiTransport constructor...
Definition: erpc_spi_slave_transport.cpp:52
virtual ~SpiSlaveTransport(void)
Destructor.
Definition: erpc_spi_slave_transport.cpp:43
SpiSlaveTransport(SPI_Type *spiBaseAddr, uint32_t baudRate, uint32_t srcClock_Hz)
Constructor.
Definition: erpc_spi_slave_transport.cpp:35
uint32_t m_baudRate
Definition: erpc_spi_slave_transport.h:60