Data Structures

group group_smif_data_structures

Typedefs

typedef void (*cy_smif_event_cb_t)(uint32_t event)

The SMIF user callback function type called at the end of a transfer.

Parameters
  • event: The event which caused a callback call.

struct SMIF_Type
#include <ip_type.h>

struct cy_stc_smif_config_t
#include <cy_smif.h>

The SMIF configuration structure.

Public Members

uint32_t mode

Specifies the mode of operation cy_en_smif_mode_t.

uint32_t deselectDelay

Specifies the minimum duration of SPI de-selection between SPI transfers:

  • “0”: 1 clock cycle.

  • ”1”: 2 clock cycles.

  • ”2”: 3 clock cycles.

  • ”3”: 4 clock cycles.

  • ”4”: 5 clock cycles.

  • ”5”: 6 clock cycles.

  • ”6”: 7 clock cycles.

  • ”7”: 8 clock cycles.

uint32_t rxClockSel

Specifies the clock source for the receiver clock cy_en_smif_clk_select_t.

uint32_t blockEvent

Specifies what happens when there is a Read from an empty RX FIFO or a Write to a full TX FIFO.

cy_en_smif_error_event_t.

struct cy_stc_smif_context_t
#include <cy_smif.h>

The SMIF internal context data.

The user must not modify it.

Public Members

uint8_t volatile const *volatile txBufferAddress

The pointer to the data to transfer.

uint32_t txBufferSize

The size of the data to transmit in bytes.

uint32_t volatile txBufferCounter

The transfer counter.

The number of the transmitted bytes = txBufferSize - txBufferCounter

uint8_t volatile *volatile rxBufferAddress

The pointer to the variable where the received data is stored.

uint32_t rxBufferSize

The size of the data to be received in bytes.

uint32_t volatile rxBufferCounter

The transfer counter.

The number of the received bytes = rxBufferSize - rxBufferCounter

uint32_t volatile transferStatus

The status of the transfer.

The transmitting / receiving is completed / in progress

cy_smif_event_cb_t volatile txCompleteCb

The user-defined callback executed at the completion of a transmission.

cy_smif_event_cb_t volatile rxCompleteCb

The user-defined callback executed at the completion of a reception.

uint32_t timeout

The timeout in microseconds for the blocking functions.

This timeout value applies to all blocking APIs.

cy_en_smif_data_rate_t preCmdDataRate

preferred command data rate

note

This parameter is available for CAT1B devices.

cy_en_smif_txfr_width_t preCmdWidth

preferred command data rate

note

This parameter is available for CAT1B devices.

cy_en_smif_data_rate_t preXIPDataRate

preferred XIP data rate

note

This parameter is available for CAT1B devices.