 |
ADI iSensor FX3 Firmware
v2.9.4-pub
Firmware for the Analog Devices EVAL-ADIS-FX3 IMU Evaluation Platform. This firmware can be compiled using the Cypress EZ USB Suite IDE
|
Go to the documentation of this file.
19 #ifndef STREAM_FUNCTIONS_H
20 #define STREAM_FUNCTIONS_H
58 #define ADI_STREAM_DONE_CMD 0
61 #define ADI_STREAM_START_CMD 1
64 #define ADI_STREAM_STOP_CMD 2
#define ADI_RT_STREAM_ENABLE
Definition: AppThread.h:51
CyU3PReturnStatus_t AdiConfigureDrPin()
Configures the data ready pin as an input with edge interrupt triggering enabled.
Definition: StreamFunctions.c:1118
CyU3PReturnStatus_t AdiBurstStreamFinished()
Cleans up resources allocated for a IMU burst stream.
Definition: StreamFunctions.c:890
CyBool_t DrPolarity
Definition: main.h:174
CyBool_t DrActive
Definition: main.h:171
CyBool_t AdiPrintStreamState()
This function prints all the stream state variables to the terminal if VERBOSE_MODE is defined.
Definition: StreamFunctions.c:114
CyU3PReturnStatus_t AdiGenericStreamFinished()
This function cleans up after a generic stream and notifies the host that the cancel operation was su...
Definition: StreamFunctions.c:1068
#define ADI_TRANSFER_STREAM_ENABLE
Definition: AppThread.h:87
uint16_t ADI_PIN_DIO1
Definition: main.h:122
CyU3PReturnStatus_t AdiI2CStreamStart()
Starts an I2C read stream.
Definition: StreamFunctions.c:139
CyU3PReturnStatus_t AdiRealTimeStreamStart()
Starts a real time stream for ADcmXLx021 DUTs.
Definition: StreamFunctions.c:434
CyU3PDmaChannel StreamingChannel
Definition: main.c:70
uint8_t * RegList
Definition: main.h:236
void AdiConfigStreamStallTimer()
Configures 10MHz timer to control stall time for generic or transfer streams.
Definition: StreamFunctions.c:44
CyU3PDmaBuffer_t SpiDmaBuffer
Definition: main.c:95
uint32_t I2CBitRate
Definition: main.h:195
CyU3PReturnStatus_t AdiGenericStreamFinished()
This function cleans up after a generic stream and notifies the host that the cancel operation was su...
Definition: StreamFunctions.c:1068
CyU3PDmaChannel MemoryToSPI
Definition: main.c:79
uint16_t TransferWordLength
Definition: main.h:218
uint8_t BulkBuffer[12288]
#define ADI_I2C_STREAM_ENABLE
Definition: AppThread.h:99
Header file for all data streaming functions (generic, burst, ADcm real time, transfer).
CyU3PReturnStatus_t AdiI2CStreamFinished()
Cleans up an I2C read stream.
Definition: StreamFunctions.c:220
CyU3PReturnStatus_t AdiBurstStreamFinished()
Cleans up resources allocated for a IMU burst stream.
Definition: StreamFunctions.c:890
void AdiSpiTransferWord(uint8_t *txBuf, uint8_t *rxBuf)
Bi-directional SPI transfer function, in register mode. Optimized for speed.
Definition: SpiFunctions.c:120
CyU3PReturnStatus_t AdiConfigurePinInterrupt(uint16_t pin, CyBool_t polarity)
configures the selected pin as an interrupt with edge triggering based on polarity
Definition: PinFunctions.c:1430
Struct to store the current data stream state information.
Definition: main.h:204
uint32_t I2CParseUSBBuffer(uint32_t *timeout, uint32_t *numBytes, CyU3PI2cPreamble_t *preamble)
Parses I2C command data from the USB Buffer. Used for read/write/stream.
Definition: I2cFunctions.c:179
uint32_t NumCaptures
Definition: main.h:227
uint32_t NumBuffers
Definition: main.h:230
CyU3PReturnStatus_t AdiBurstStreamStart()
Starts a burst stream for IMU products.
Definition: StreamFunctions.c:721
void AdiPrintSpiConfig(CyU3PSpiConfig_t config)
Prints a given SPI config over the UART debug port.
Definition: SpiFunctions.c:647
#define ADI_STREAMING_ENDPOINT
Definition: main.h:388
CyU3PSpiConfig_t AdiGetSpiConfig()
This function parses the SPI control registers into an easier to work with config struct.
Definition: SpiFunctions.c:615
CyU3PReturnStatus_t AdiBurstStreamStart()
Starts a burst stream for IMU products.
Definition: StreamFunctions.c:721
void AdiSetSpiWordLength(uint8_t wordLength)
Sets the SPI controller word length (4 - 32 bits)
Definition: SpiFunctions.c:793
uint32_t StallTime
Definition: main.h:165
uint16_t BytesPerBuffer
Definition: main.h:233
Struct to store the current board state (SPI config, USB speed, etc)
Definition: main.h:148
StreamState StreamThreadState
Definition: main.c:122
CyU3PReturnStatus_t AdiStopAnyDataStream()
This function sets a flag to notify the streaming thread that the user requested to cancel streaming.
Definition: StreamFunctions.c:73
CyU3PReturnStatus_t AdiI2CStreamStart()
Starts an I2C read stream.
Definition: StreamFunctions.c:139
CyU3PReturnStatus_t AdiRealTimeStreamFinished()
This function cleans up resources allocated for a real time stream.
Definition: StreamFunctions.c:647
void AdiSpiPrepareForTransfer()
Set up the SPI for a register based transfer.
Definition: SpiFunctions.c:72
FX3PinMap PinMap
Definition: main.h:192
CyU3PReturnStatus_t AdiTransferStreamFinished()
Cleans up a protocol agnostic transfer stream.
Definition: StreamFunctions.c:414
CyU3PReturnStatus_t AdiSpiResetFifo(CyBool_t isTx, CyBool_t isRx)
This function resets the SPI FIFO and disables the SPI block after completion.
Definition: SpiFunctions.c:832
CyU3PReturnStatus_t AdiSleepForMicroSeconds(uint32_t numMicroSeconds)
This function blocks thread execution for a specified number of microseconds.
Definition: HelperFunctions.c:73
CyU3PI2cPreamble_t I2CStreamPreamble
Definition: main.h:242
CyU3PSpiConfig_t SpiConfig
Definition: main.h:150
CyU3PReturnStatus_t AdiTransferStreamFinished()
Cleans up a protocol agnostic transfer stream.
Definition: StreamFunctions.c:414
volatile CyBool_t KillStreamEarly
Definition: main.c:119
uint16_t DrPin
Definition: main.h:168
uint16_t UsbBufferSize
Definition: main.h:156
CyU3PReturnStatus_t AdiI2CStreamFinished()
Cleans up an I2C read stream.
Definition: StreamFunctions.c:220
CyU3PEvent EventHandler
Definition: main.c:60
CyU3PReturnStatus_t AdiTransferStreamStart()
Starts a protocol agnostic SPI transfer stream.
Definition: StreamFunctions.c:256
CyU3PReturnStatus_t AdiRealTimeStreamStart()
Starts a real time stream for ADcmXLx021 DUTs.
Definition: StreamFunctions.c:434
BoardState FX3State
Definition: main.c:112
Main header file for the Analog Devices iSensor FX3 Demonstration Platform firmware.
void AdiAppErrorHandler(CyU3PReturnStatus_t status)
This function handles critical errors generated by the ADI application.
Definition: main.c:801
uint32_t TransferByteLength
Definition: main.h:221
CyU3PReturnStatus_t AdiStopAnyDataStream()
This function sets a flag to notify the streaming thread that the user requested to cancel streaming.
Definition: StreamFunctions.c:73
CyU3PReturnStatus_t AdiTransferStreamStart()
Starts a protocol agnostic SPI transfer stream.
Definition: StreamFunctions.c:256
CyU3PReturnStatus_t AdiGenericStreamStart()
Starts a register read/write stream, with options to trigger on a data ready.
Definition: StreamFunctions.c:949
CyU3PReturnStatus_t AdiRealTimeStreamFinished()
This function cleans up resources allocated for a real time stream.
Definition: StreamFunctions.c:647
CyBool_t PinExitEnable
Definition: main.h:209
void AdiSendStatus(uint32_t status, uint16_t count, CyBool_t isControlEndpoint)
Sends status back to PC over control endpoint or manual bulk in endpoint.
Definition: HelperFunctions.c:191
#define ADI_TIMER_PIN_INDEX
Definition: main.h:381
#define ADI_BURST_STREAM_ENABLE
Definition: AppThread.h:75
CyBool_t AdiPrintStreamState()
This function prints all the stream state variables to the terminal if VERBOSE_MODE is defined.
Definition: StreamFunctions.c:114
#define ADI_GENERIC_STREAM_ENABLE
Definition: AppThread.h:63
CyBool_t PinStartEnable
Definition: main.h:212
@ StreamFunctions_c
Definition: ErrorLog.h:57
CyU3PReturnStatus_t AdiI2CInit(uint32_t BitRate, CyBool_t isDMA)
Init I2C peripheral.
Definition: I2cFunctions.c:130
uint32_t NumRealTimeCaptures
Definition: main.h:215
void AdiLogError(FileIdentifier File, uint32_t Line, uint32_t ErrorCode)
Logs a firmware error to flash memory for later examination.
Definition: ErrorLog.c:51
uint16_t BytesPerUsbPacket
Definition: main.h:239
#define ADI_GENERIC_STALL_OFFSET
Definition: main.h:375
CyU3PReturnStatus_t AdiConfigureDrPin()
Configures the data ready pin as an input with edge interrupt triggering enabled.
Definition: StreamFunctions.c:1118
CyU3PReturnStatus_t AdiGenericStreamStart()
Starts a register read/write stream, with options to trigger on a data ready.
Definition: StreamFunctions.c:949
uint16_t RoundedByteTransferLength
Definition: main.h:224
void AdiConfigStreamStallTimer()
Configures 10MHz timer to control stall time for generic or transfer streams.
Definition: StreamFunctions.c:44