Skip to content

File syn_port_spi.h

FileList > port > syn_port_spi.h

Go to the source code of this file

Port contract for Serial Peripheral Interface (SPI) hardware.

  • #include "../common/syn_defs.h"

Public Functions

Type Name
SYN_Status syn_port_spi_deinit (uint8_t spi_id)
De-initialize an SPI hardware instance.
SYN_Status syn_port_spi_init (uint8_t spi_id, uint32_t baudrate_hz, uint8_t mode, uint8_t role)
Initialize an SPI hardware instance.
SYN_Status syn_port_spi_transfer (uint8_t spi_id, const uint8_t * tx, uint8_t * rx, size_t len)
Perform a full-duplex simultaneous SPI transfer.

Public Functions Documentation

function syn_port_spi_deinit

De-initialize an SPI hardware instance.

SYN_Status syn_port_spi_deinit (
    uint8_t spi_id
) 

Parameters:

  • spi_id Instance index.

Returns:

SYN_OK on success.


function syn_port_spi_init

Initialize an SPI hardware instance.

SYN_Status syn_port_spi_init (
    uint8_t spi_id,
    uint32_t baudrate_hz,
    uint8_t mode,
    uint8_t role
) 

Parameters:

  • spi_id Instance index (0 = SPI1, 1 = SPI2).
  • baudrate_hz Baudrate frequency in Hz (e.g. 1000000, 18000000).
  • mode SPI Mode: 0 (CPOL=0, CPHA=0), 1 (CPOL=0, CPHA=1), 2 (CPOL=1, CPHA=0), 3 (CPOL=1, CPHA=1).
  • role 0 = Master, 1 = Slave.

Returns:

SYN_OK on success.


function syn_port_spi_transfer

Perform a full-duplex simultaneous SPI transfer.

SYN_Status syn_port_spi_transfer (
    uint8_t spi_id,
    const uint8_t * tx,
    uint8_t * rx,
    size_t len
) 

Parameters:

  • spi_id Instance index.
  • tx TX data buffer (can be NULL, transmits 0xFF dummy bytes).
  • rx RX destination buffer (can be NULL).
  • len Transfer byte count.

Returns:

SYN_OK on success.



The documentation for this class was generated from the following file src/syntropic/port/syn_port_spi.h