Stream APIs

APIs for accessing SPI master 'stream' functionality. More...

Functions

gos_result_t gos_spi_stream_configure (gos_spi_t port, gos_gpio_t ss_gpio, gos_spi_flag_t flags, uint32_t clock_rate)
 Configure SPI stream for communication with SPI slave. More...
 
gos_result_t gos_spi_stream_open (gos_handle_t *handle_ptr, uint16_t rx_buffer_size)
 Open SPI stream to slave device. More...
 
gos_result_t gos_spi_stream_write (gos_handle_t handle, const void *data, uint32_t size)
 Write data to slave device. More...
 
gos_result_t gos_spi_stream_read (gos_handle_t handle, void *data, uint32_t max_size, uint32_t *bytes_read_ptr)
 Read data from slave device. More...
 
gos_result_t gos_spi_stream_read_with_buffer (gos_handle_t handle, gos_buffer_t *buffer)
 Read SPI stream data into buffer. More...
 
gos_result_t gos_spi_stream_close (gos_handle_t handle)
 Close SPI stream. More...
 
gos_result_t gos_spi_stream_set_slave_select (gos_handle_t handle, gos_gpio_t ss_gpio)
 Switch SPI stream's slave device. More...
 

Detailed Description

APIs for accessing SPI master 'stream' functionality.

Function Documentation

◆ gos_spi_stream_close()

gos_result_t gos_spi_stream_close ( gos_handle_t  handle)

Close SPI stream.

See Gecko OS Command API documentation: stream_close.

Note
Stream handles start at 1, max handle value is GOS_MAX_STREAMS
Parameters
[in]handleHandle of stream to close
Returns
gos_result_t result of api call

◆ gos_spi_stream_configure()

gos_result_t gos_spi_stream_configure ( gos_spi_t  port,
gos_gpio_t  ss_gpio,
gos_spi_flag_t  flags,
uint32_t  clock_rate 
)

Configure SPI stream for communication with SPI slave.

See Gecko OS Command API documentation: spi_master_config.

Parameters
[in]portSPI peripheral port
[in]ss_gpioSlave-select gpio
[in]flagsConfiguration flags, see SPI_FLAG macros
[in]clock_rateSPI master clock
Returns
result of api call, see gos_result_t

◆ gos_spi_stream_open()

gos_result_t gos_spi_stream_open ( gos_handle_t handle_ptr,
uint16_t  rx_buffer_size 
)

Open SPI stream to slave device.

See Gecko OS Command API documentation: spi_master_open.

Parameters
[out]handle_ptrStream handle
[in]rx_buffer_sizeSize of RX buffer
Returns
result of api call, see gos_result_t

◆ gos_spi_stream_read()

gos_result_t gos_spi_stream_read ( gos_handle_t  handle,
void *  data,
uint32_t  max_size,
uint32_t *  bytes_read_ptr 
)

Read data from slave device.

See Gecko OS Command API documentation: spi_master_open, stream_read.

Note
Stream handles start at 1, max handle value is GOS_MAX_STREAMS
Parameters
[in]handleStream handle returned by API call
[out]dataBuffer to hold read data
[in]max_sizeMaximum amount of data to read
[out]bytes_read_ptrPointer to hold actual amount of data read (set NULL if not used)
Returns
gos_result_t result of api call

◆ gos_spi_stream_read_with_buffer()

gos_result_t gos_spi_stream_read_with_buffer ( gos_handle_t  handle,
gos_buffer_t buffer 
)

Read SPI stream data into buffer.

See gos_read_with_buffer() for more information.

Note
Stream handles start at 1, max handle value is GOS_MAX_STREAMS
Parameters
handleStream handle
bufferBuffer to specify how much data to read, then return how much data was read with pointer to data
Returns
gos_result_t result of api call

◆ gos_spi_stream_set_slave_select()

gos_result_t gos_spi_stream_set_slave_select ( gos_handle_t  handle,
gos_gpio_t  ss_gpio 
)

Switch SPI stream's slave device.

A SPI stream can be associated with multiple SPI slaves. A SPI slave is configured with gos_spi_stream_configure() The configured SPI slave is then selected with this API

Note
Stream handles start at 1, max handle value is GOS_MAX_STREAMS
Parameters
[in]handleSPI stream handle
[in]ss_gpioGPIO of configured SPI slave
Returns
gos_result_t result of api call

◆ gos_spi_stream_write()

gos_result_t gos_spi_stream_write ( gos_handle_t  handle,
const void *  data,
uint32_t  size 
)

Write data to slave device.

See Gecko OS Command API documentation: spi_master_open, stream_write.

Note
Stream handles start at 1, max handle value is GOS_MAX_STREAMS
Parameters
[in]handleStream handle returned by API call
[in]dataData to write to stream
[in]sizeSize of data in bytes to write
Returns
gos_result_t result of api call