ISSDK  1.7
IoT Sensing Software Development Kit
Macros | Functions | Variables
register_io_spi.c File Reference

The register_io_spi.c file contains definitions for low-level interface functions for reading and writing sensor registers using CMSIS APIs. More...

#include <string.h>
#include "issdk_hal.h"
#include "gpio_driver.h"
#include "register_io_spi.h"
Include dependency graph for register_io_spi.c:

Go to the source code of this file.

Macros

#define SPI_COUNT   (sizeof(spiBases) / sizeof(void *))
 

Functions

void register_spi_control (spiControlParams_t *ssControl)
 
int32_t Register_SPI_BlockWrite (ARM_DRIVER_SPI *pCommDrv, registerDeviceInfo_t *devInfo, void *pWriteParams, uint8_t offset, const uint8_t *pBuffer, uint8_t bytesToWrite)
 The interface function to block write to a sensor register. More...
 
int32_t Register_SPI_Write (ARM_DRIVER_SPI *pCommDrv, registerDeviceInfo_t *devInfo, void *pWriteParams, uint8_t offset, uint8_t value, uint8_t mask)
 The interface function to write a sensor register. More...
 
int32_t Register_SPI_Read (ARM_DRIVER_SPI *pCommDrv, registerDeviceInfo_t *devInfo, void *pReadParams, uint8_t offset, uint8_t length, uint8_t *pOutBuffer)
 The interface function to read a sensor register. More...
 

Variables

GENERIC_DRIVER_GPIOpDspiGpioDriver = &Driver_GPIO_KSDK
 
SPI_Type *const spiBases [] = SPI_BASE_PTRS
 
volatile bool b_SPI_CompletionFlag [SPI_COUNT] = {false}
 
volatile uint32_t g_SPI_ErrorEvent [SPI_COUNT] = {ARM_SPI_EVENT_TRANSFER_COMPLETE}
 

Detailed Description

The register_io_spi.c file contains definitions for low-level interface functions for reading and writing sensor registers using CMSIS APIs.

Definition in file register_io_spi.c.

Macro Definition Documentation

◆ SPI_COUNT

#define SPI_COUNT   (sizeof(spiBases) / sizeof(void *))

Definition at line 52 of file register_io_spi.c.

Function Documentation

◆ Register_SPI_BlockWrite()

int32_t Register_SPI_BlockWrite ( ARM_DRIVER_SPI *  pCommDrv,
registerDeviceInfo_t devInfo,
void *  pWriteParams,
uint8_t  offset,
const uint8_t *  pBuffer,
uint8_t  bytesToWrite 
)

◆ register_spi_control()

void register_spi_control ( spiControlParams_t ssControl)

◆ Register_SPI_Read()

int32_t Register_SPI_Read ( ARM_DRIVER_SPI *  pCommDrv,
registerDeviceInfo_t devInfo,
void *  pReadParams,
uint8_t  offset,
uint8_t  length,
uint8_t *  pOutBuffer 
)

◆ Register_SPI_Write()

int32_t Register_SPI_Write ( ARM_DRIVER_SPI *  pCommDrv,
registerDeviceInfo_t devInfo,
void *  pWriteParams,
uint8_t  offset,
uint8_t  value,
uint8_t  mask 
)

The interface function to write a sensor register.

The interface function to write a sensor register.

Set the register based on the values in the register value pair configuration.

Read the register value.

'OR' in the requested values to the current contents of the register

Overwrite the register with specified value.

Write and the value.

Definition at line 229 of file register_io_spi.c.

References b_SPI_CompletionFlag, spiControlParams_t::cmdCode, registerDeviceInfo_t::deviceInstance, registerDeviceInfo_t::functionParam, g_SPI_ErrorEvent, registerDeviceInfo_t::idleFunction, int32_t(), spi_mater_SlaveCmd::pReadBuffer, spiSlaveSpecificParams_t::pReadPreprocessFN, spiSlaveSpecificParams_t::pTargetSlavePinID, spi_mater_SlaveCmd::pWriteBuffer, spiSlaveSpecificParams_t::pWritePreprocessFN, register_spi_control(), spi_mater_SlaveCmd::size, spiSlaveSpecificParams_t::spiCmdLen, spiSlaveSpecificParams_t::ssActiveValue, and status.

Referenced by DIFF_P_SPI_Configure(), DIFF_P_SPI_DeInit(), DIFF_P_SPI_Initialize(), FXAS21002_SPI_Configure(), FXAS21002_SPI_Deinit(), FXLS8471Q_SPI_Configure(), FXLS8962_SPI_Configure(), FXLS8962_SPI_Deinit(), FXOS8700_SPI_Configure(), FXOS8700_SPI_Deinit(), and Sensor_SPI_Write().

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ b_SPI_CompletionFlag

volatile bool b_SPI_CompletionFlag[SPI_COUNT] = {false}

◆ g_SPI_ErrorEvent

volatile uint32_t g_SPI_ErrorEvent[SPI_COUNT] = {ARM_SPI_EVENT_TRANSFER_COMPLETE}

◆ pDspiGpioDriver

Definition at line 57 of file register_io_spi.c.

◆ spiBases

SPI_Type* const spiBases[] = SPI_BASE_PTRS

Definition at line 58 of file register_io_spi.c.