![]() |
NEORV32 - Software Framework Documentation
|
Serial data interface controller (SPPI) HW driver header file. More...
Go to the source code of this file.
Data Structures | |
struct | neorv32_sdi_t |
Functions | |
Prototypes | |
int | neorv32_sdi_available (void) |
void | neorv32_sdi_setup (uint32_t irq_mask) |
void | neorv32_sdi_rx_clear (void) |
void | neorv32_sdi_disable (void) |
void | neorv32_sdi_enable (void) |
int | neorv32_sdi_get_fifo_depth (void) |
int | neorv32_sdi_put (uint8_t data) |
void | neorv32_sdi_put_nonblocking (uint8_t data) |
int | neorv32_sdi_get (uint8_t *data) |
uint8_t | neorv32_sdi_get_nonblocking (void) |
IO Device: Serial Data Interface (SDI) | |
#define | NEORV32_SDI ((neorv32_sdi_t*) (NEORV32_SDI_BASE)) |
enum | NEORV32_SDI_CTRL_enum { SDI_CTRL_EN = 0 , SDI_CTRL_CLR_RX = 1 , SDI_CTRL_FIFO_LSB = 4 , SDI_CTRL_FIFO_MSB = 7 , SDI_CTRL_IRQ_RX_AVAIL = 15 , SDI_CTRL_IRQ_RX_HALF = 16 , SDI_CTRL_IRQ_RX_FULL = 17 , SDI_CTRL_IRQ_TX_EMPTY = 18 , SDI_CTRL_RX_AVAIL = 23 , SDI_CTRL_RX_HALF = 24 , SDI_CTRL_RX_FULL = 25 , SDI_CTRL_TX_EMPTY = 26 , SDI_CTRL_TX_FULL = 27 } |
Serial data interface controller (SPPI) HW driver header file.
#define NEORV32_SDI ((neorv32_sdi_t*) (NEORV32_SDI_BASE)) |
SDI module hardware access (neorv32_sdi_t)
SDI control register bits
int neorv32_sdi_available | ( | void | ) |
Check if SDI unit was synthesized.
void neorv32_sdi_disable | ( | void | ) |
Disable SDI controller.
void neorv32_sdi_enable | ( | void | ) |
Enable SDI controller.
int neorv32_sdi_get | ( | uint8_t * | data | ) |
Get data from SDI input FIFO.
[in,out] | Pointer | fro data byte read from RX FIFO. |
int neorv32_sdi_get_fifo_depth | ( | void | ) |
Get SDI FIFO depth.
uint8_t neorv32_sdi_get_nonblocking | ( | void | ) |
Get data from SDI input FIFO (ignoring RX FIFO status).
[in] | data | Byte read from RX FIFO. |
int neorv32_sdi_put | ( | uint8_t | data | ) |
Push data to SDI output FIFO.
[in] | data | Byte to push into TX FIFO. |
void neorv32_sdi_put_nonblocking | ( | uint8_t | data | ) |
Push data to SDI output FIFO (ignoring TX FIFO status).
[in] | data | Byte to push into TX FIFO. |
void neorv32_sdi_rx_clear | ( | void | ) |
Clear SDI receive FIFO.
void neorv32_sdi_setup | ( | uint32_t | irq_mask | ) |
Reset, enable and configure SDI controller. The SDI control register bits are listed in NEORV32_SDI_CTRL_enum.
[in] | irq_mask | Interrupt configuration mask (CTRL's irq_* bits). |