mbed library sources

Fork of mbed-src by mbed official

Embed: (wiki syntax)

« Back to documentation index

SPI Configuration Functions

SPI Configuration Functions

Functions

void spi_init (spi_t *obj, PinName mosi, PinName miso, PinName sclk, PinName ssel)
 Initialize the SPI peripheral.
void spi_free (spi_t *obj)
 Release a SPI object.
void spi_format (spi_t *obj, int bits, int mode, int slave)
 Configure the SPI format.
void spi_frequency (spi_t *obj, int hz)
 Set the SPI baud rate.

Function Documentation

void spi_format ( spi_t obj,
int  bits,
int  mode,
int  slave 
)

Configure the SPI format.

Set the number of bits per frame, configure clock polarity and phase, shift order and master/slave mode

Parameters:
[in,out]objThe SPI object to configure
[in]bitsThe number of bits per frame
[in]modeThe SPI mode (clock polarity, phase, and shift direction)
[in]slaveZero for master mode or non-zero for slave mode
void spi_free ( spi_t obj )

Release a SPI object.

TODO: spi_free is currently unimplemented This will require reference counting at the C++ level to be safe

Return the pins owned by the SPI object to their reset state Disable the SPI peripheral Disable the SPI clock

Parameters:
[in]objThe SPI object to deinitialize
void spi_frequency ( spi_t obj,
int  hz 
)

Set the SPI baud rate.

Actual frequency may differ from the desired frequency due to available dividers and bus clock Configures the SPI peripheral's baud rate

Parameters:
[in,out]objThe SPI object to configure
[in]hzThe baud rate in Hz
void spi_init ( spi_t obj,
PinName  mosi,
PinName  miso,
PinName  sclk,
PinName  ssel 
)

Initialize the SPI peripheral.

Configures the pins used by SPI, sets a default format and frequency, and enables the peripheral

Parameters:
[out]objThe SPI object to initialize
[in]mosiThe pin to use for MOSI
[in]misoThe pin to use for MISO
[in]sclkThe pin to use for SCLK
[in]sselThe pin to use for SSEL