iLLD_TC27xD  1.0
SpiIf.h File Reference

SPI interface types. More...

#include "Src/Std/IfxSrc.h"

Go to the source code of this file.

Data Structures

struct  SpiIf_Flags
 
struct  SpiIf_Job
 
struct  SpiIf_funcs
 
struct  SpiIf_
 
struct  SpiIf_Config
 
struct  Spi_ErrorChecks
 
struct  SpiIf_ChMode
 
struct  SpiIf_Ch_
 
struct  SpiIf_ChConfig_
 

Macros

#define IFXQSPI_BACONSIZE(Datasize)   ((((Datasize) % 16)== 0) ? ((uint8)((Datasize)/16)) : ((uint8)((Datasize)/16) + 1))
 
#define IFXQSPI_FIFO32BITSIZE(Datasize)   (((Datasize) % 4)== 0) ? ((uint8)((Datasize)/4)) : ((uint8)((Datasize)/4) + 1)
 
#define IFXQSPI_GETLONGMODEFIFOSIZE(Datasize)   IFXQSPI_BACONSIZE(Datasize) + IFXQSPI_FIFO32BITSIZE(Datasize)
 

Typedefs

typedef struct SpiIf_Ch_ SpiIf_Ch
 Alias to the channel structure. More...
 
typedef struct SpiIf_ChConfig_ SpiIf_ChConfig
 
typedef struct SpiIf_ SpiIf
 
typedef SpiIf_Status(* SpiIf_Exchange )(SpiIf_Ch *handle, const void *src, void *dest, Ifx_SizeT numOfData)
 
typedef SpiIf_Status(* SpiIf_GetStatus )(SpiIf_Ch *handle)
 
typedef void(* SpiIf_OnEvent )(SpiIf *handle)
 
typedef void(* SpiIf_Cbk )(void *data)
 SPI channel callback prototype. More...
 
typedef void(* TxRxHandler )(SpiIf_Ch *handle)
 

Enumerations

enum  SpiIf_Status {
  SpiIf_Status_ok,
  SpiIf_Status_busy,
  SpiIf_Status_unknown
}
 SPI Interface Status. More...
 
enum  SpiIf_SlsoTiming {
  SpiIf_SlsoTiming_0 = 0,
  SpiIf_SlsoTiming_1,
  SpiIf_SlsoTiming_2,
  SpiIf_SlsoTiming_3,
  SpiIf_SlsoTiming_4,
  SpiIf_SlsoTiming_5,
  SpiIf_SlsoTiming_6,
  SpiIf_SlsoTiming_7
}
 Slave select output timing. More...
 
enum  SpiIf_DataHeading {
  SpiIf_DataHeading_lsbFirst = 0,
  SpiIf_DataHeading_msbFirst
}
 Heading. More...
 
enum  SpiIf_ShiftClock {
  SpiIf_ShiftClock_shiftTransmitDataOnLeadingEdge = 0,
  SpiIf_ShiftClock_shiftTransmitDataOnTrailingEdge
}
 Clock phase. More...
 
enum  SpiIf_ClockPolarity {
  SpiIf_ClockPolarity_idleLow = 0,
  SpiIf_ClockPolarity_idleHigh
}
 Clock polarity. More...
 
enum  SpiIf_Mode {
  SpiIf_Mode_master,
  SpiIf_Mode_slave,
  SpiIf_Mode_undefined
}
 

Functions

IFX_INLINE void SpiIf_wait (SpiIf_Ch *handle)
 
IFX_EXTERN void SpiIf_initConfig (SpiIf_Config *config)
 
IFX_EXTERN void SpiIf_initChannelConfig (SpiIf_ChConfig *config, SpiIf *driver)
 
Virtual functions

These functions are implemented by a driver.

IFX_INLINE SpiIf_Status SpiIf_exchange (SpiIf_Ch *handle, const void *src, void *dest, Ifx_SizeT numOfData)
 
IFX_INLINE SpiIf_Status SpiIf_getStatus (SpiIf_Ch *handle)
 

Detailed Description

SPI interface types.

Version
iLLD_1_0_0_11_0
                            IMPORTANT NOTICE

Infineon Technologies AG (Infineon) is supplying this file for use exclusively with Infineon's microcontroller products. This file can be freely distributed within development tools that are supporting such microcontroller products.

THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.

Definition in file SpiIf.h.