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
Macros | Functions
AppThread.h File Reference

Header file for all the primary application thread functions. More...

#include "main.h"

Go to the source code of this file.

Macros

#define APPTHREAD_STACK   (0x0800)
 
#define APPTHREAD_PRIORITY   (8)
 
#define ADI_KILL_THREAD_EARLY   (1 << 0)
 
#define ADI_RT_STREAM_START   (1 << 1)
 
#define ADI_RT_STREAM_STOP   (1 << 2)
 
#define ADI_RT_STREAM_DONE   (1 << 3)
 
#define ADI_RT_STREAM_ENABLE   (1 << 4)
 
#define ADI_GENERIC_STREAM_START   (1 << 5)
 
#define ADI_GENERIC_STREAM_STOP   (1 << 6)
 
#define ADI_GENERIC_STREAM_DONE   (1 << 7)
 
#define ADI_GENERIC_STREAM_ENABLE   (1 << 8)
 
#define ADI_BURST_STREAM_START   (1 << 9)
 
#define ADI_BURST_STREAM_STOP   (1 << 10)
 
#define ADI_BURST_STREAM_DONE   (1 << 11)
 
#define ADI_BURST_STREAM_ENABLE   (1 << 12)
 
#define ADI_TRANSFER_STREAM_START   (1 << 13)
 
#define ADI_TRANSFER_STREAM_STOP   (1 << 14)
 
#define ADI_TRANSFER_STREAM_DONE   (1 << 15)
 
#define ADI_TRANSFER_STREAM_ENABLE   (1 << 16)
 
#define ADI_I2C_STREAM_START   (1 << 17)
 
#define ADI_I2C_STREAM_STOP   (1 << 18)
 
#define ADI_I2C_STREAM_DONE   (1 << 19)
 
#define ADI_I2C_STREAM_ENABLE   (1 << 20)
 

Functions

void AdiAppThreadEntry (uint32_t input)
 This is the entry point for the primary iSensors firmware application thread. More...
 

Detailed Description

Header file for all the primary application thread functions.

Copyright (c) 2018-2020 Analog Devices, Inc. All Rights Reserved. This software is proprietary to Analog Devices, Inc. and its licensors.

THIS SOFTWARE UTILIZES LIBRARIES DEVELOPED AND MAINTAINED BY CYPRESS INC. THE LICENSE INCLUDED IN THIS REPOSITORY DOES NOT EXTEND TO CYPRESS PROPERTY.

Use of this file is governed by the license agreement included in this repository.

Date
8/1/2019
Author
A. Nolan (alex..nosp@m.nola.nosp@m.n@ana.nosp@m.log..nosp@m.com)
J. Chong (juan..nosp@m.chon.nosp@m.g@ana.nosp@m.log..nosp@m.com)

Macro Definition Documentation

◆ ADI_BURST_STREAM_DONE

#define ADI_BURST_STREAM_DONE   (1 << 11)

Event handler bit for cleaning up a burst stream

◆ ADI_BURST_STREAM_ENABLE

#define ADI_BURST_STREAM_ENABLE   (1 << 12)

Event handler bit for continuing a burst stream, within the StreamThread

◆ ADI_BURST_STREAM_START

#define ADI_BURST_STREAM_START   (1 << 9)

Event handler bit for burst stream start

◆ ADI_BURST_STREAM_STOP

#define ADI_BURST_STREAM_STOP   (1 << 10)

Event handler bit to asynchronously stop a burst stream

◆ ADI_GENERIC_STREAM_DONE

#define ADI_GENERIC_STREAM_DONE   (1 << 7)

Event handler bit for cleaning up a generic stream

◆ ADI_GENERIC_STREAM_ENABLE

#define ADI_GENERIC_STREAM_ENABLE   (1 << 8)

Event handler bit for continuing a generic stream, within the StreamThread

◆ ADI_GENERIC_STREAM_START

#define ADI_GENERIC_STREAM_START   (1 << 5)

Event handler bit for generic stream start

◆ ADI_GENERIC_STREAM_STOP

#define ADI_GENERIC_STREAM_STOP   (1 << 6)

Event handler bit for asynchronously stopping a generic stream

◆ ADI_I2C_STREAM_DONE

#define ADI_I2C_STREAM_DONE   (1 << 19)

I2C read stream done

◆ ADI_I2C_STREAM_ENABLE

#define ADI_I2C_STREAM_ENABLE   (1 << 20)

I2C read stream enable

◆ ADI_I2C_STREAM_START

#define ADI_I2C_STREAM_START   (1 << 17)

Start I2C read stream

◆ ADI_I2C_STREAM_STOP

#define ADI_I2C_STREAM_STOP   (1 << 18)

Stop I2C read stream

◆ ADI_KILL_THREAD_EARLY

#define ADI_KILL_THREAD_EARLY   (1 << 0)

Event handler bit to kill any arbitrary thread early

◆ ADI_RT_STREAM_DONE

#define ADI_RT_STREAM_DONE   (1 << 3)

Event handler bit for cleaning up a real time stream

◆ ADI_RT_STREAM_ENABLE

#define ADI_RT_STREAM_ENABLE   (1 << 4)

Event handler bit for contiuing a real time stream, within the StreamThread

◆ ADI_RT_STREAM_START

#define ADI_RT_STREAM_START   (1 << 1)

Event handler bit for real time stream start

◆ ADI_RT_STREAM_STOP

#define ADI_RT_STREAM_STOP   (1 << 2)

Event handler bit for asynchronously stopping a real time stream

◆ ADI_TRANSFER_STREAM_DONE

#define ADI_TRANSFER_STREAM_DONE   (1 << 15)

Event handler bit for cleaning up a transfer stream

◆ ADI_TRANSFER_STREAM_ENABLE

#define ADI_TRANSFER_STREAM_ENABLE   (1 << 16)

Event handler bit for continuing a transfer stream after one "buffer", within the StreamThread

◆ ADI_TRANSFER_STREAM_START

#define ADI_TRANSFER_STREAM_START   (1 << 13)

Event handler bit for starting a transfer (ISpi32) stream

◆ ADI_TRANSFER_STREAM_STOP

#define ADI_TRANSFER_STREAM_STOP   (1 << 14)

Event handler bit to asynchronously stop a transfer stream

◆ APPTHREAD_PRIORITY

#define APPTHREAD_PRIORITY   (8)

AppThread execution priority

◆ APPTHREAD_STACK

#define APPTHREAD_STACK   (0x0800)

AppThread allocated stack size (2KB)

Function Documentation

◆ AdiAppThreadEntry()

void AdiAppThreadEntry ( uint32_t  input)

This is the entry point for the primary iSensors firmware application thread.

Parameters
inputUnused input argument required by the thread manager
Returns
void

This function performs device initialization and then handles streaming start/stop commands for the various streaming methods. The actual work done for the streaming is performed in the StreamThread - seperating the two allows for better control and responsiveness to cancellation commands.