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
HelperFunctions.h
Go to the documentation of this file.
1 
18 #ifndef HELPERFUNCTIONS_H_
19 #define HELPERFUNCTIONS_H_
20 
21 /* Include main */
22 #include "main.h"
23 
25 typedef enum DutVoltage
26 {
28  Off = 0,
29 
32 
34  On5_0Volts = 2
36 
37 /* Public function prototypes */
39 void AdiGetBuildDate(uint8_t * outBuf);
40 void AdiSendStatus(uint32_t status, uint16_t count, CyBool_t isControlEndpoint);
41 CyU3PReturnStatus_t AdiSetDutSupply(DutVoltage SupplyMode);
42 CyU3PReturnStatus_t AdiSleepForMicroSeconds(uint32_t numMicroSeconds);
43 void AdiReturnBulkEndpointData(CyU3PReturnStatus_t status, uint16_t length);
44 
45 #endif /* HELPERFUNCTIONS_H_ */
WatchdogTimer
static CyU3PTimer WatchdogTimer
Definition: HelperFunctions.c:34
AdiReturnBulkEndpointData
void AdiReturnBulkEndpointData(CyU3PReturnStatus_t status, uint16_t length)
Sends a function result to the PC via the ChannelToPC endpoint.
Definition: HelperFunctions.c:49
FX3State
BoardState FX3State
Definition: main.c:112
ManualDMABuffer
CyU3PDmaBuffer_t ManualDMABuffer
Definition: main.c:92
On3_3Volts
@ On3_3Volts
Definition: HelperFunctions.h:31
Off
@ Off
Definition: HelperFunctions.h:28
BoardState::WatchDogEnabled
CyBool_t WatchDogEnabled
Definition: main.h:177
AdiGetBuildDate
void AdiGetBuildDate(uint8_t *outBuf)
Gets the firmware build date, followed by the build time.
Definition: HelperFunctions.c:158
ChannelToPC
CyU3PDmaChannel ChannelToPC
Definition: main.c:76
On5_0Volts
@ On5_0Volts
Definition: HelperFunctions.h:34
AdiGetBuildDate
void AdiGetBuildDate(uint8_t *outBuf)
Gets the firmware build date, followed by the build time.
Definition: HelperFunctions.c:158
HelperFunctions.h
Header file for a set of general purpose iSensor FX3 helper functions.
DutVoltage
DutVoltage
Definition: HelperFunctions.h:26
AdiSleepForMicroSeconds
CyU3PReturnStatus_t AdiSleepForMicroSeconds(uint32_t numMicroSeconds)
This function blocks thread execution for a specified number of microseconds.
Definition: HelperFunctions.c:73
HelperFunctions_c
@ HelperFunctions_c
Definition: ErrorLog.h:69
ADI_5V_EN
#define ADI_5V_EN
Definition: PinFunctions.h:79
BoardState
Struct to store the current board state (SPI config, USB speed, etc)
Definition: main.h:148
ADI_3_3V_EN
#define ADI_3_3V_EN
Definition: PinFunctions.h:76
AdiConfigureWatchdog
void AdiConfigureWatchdog()
Configures the FX3 watchdog timer based on the current board state.
Definition: HelperFunctions.c:227
AdiSetDutSupply
CyU3PReturnStatus_t AdiSetDutSupply(DutVoltage SupplyMode)
This function configures the DUT supply voltage.
Definition: HelperFunctions.c:94
AdiSendStatus
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
BoardState::WatchDogTicks
uint32_t WatchDogTicks
Definition: main.h:183
UNUSED
#define UNUSED(x)
Definition: main.h:447
AdiSleepForMicroSeconds
CyU3PReturnStatus_t AdiSleepForMicroSeconds(uint32_t numMicroSeconds)
This function blocks thread execution for a specified number of microseconds.
Definition: HelperFunctions.c:73
BoardState::WatchDogPeriodMs
uint32_t WatchDogPeriodMs
Definition: main.h:180
main.h
Main header file for the Analog Devices iSensor FX3 Demonstration Platform firmware.
AdiSetDutSupply
CyU3PReturnStatus_t AdiSetDutSupply(DutVoltage SupplyMode)
This function configures the DUT supply voltage.
Definition: HelperFunctions.c:94
AdiSendStatus
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
AdiConfigureWatchdog
void AdiConfigureWatchdog()
Configures the FX3 watchdog timer based on the current board state.
Definition: HelperFunctions.c:227
USBBuffer
uint8_t USBBuffer[4096]
AdiLogError
void AdiLogError(FileIdentifier File, uint32_t Line, uint32_t ErrorCode)
Logs a firmware error to flash memory for later examination.
Definition: ErrorLog.c:51
AdiReturnBulkEndpointData
void AdiReturnBulkEndpointData(CyU3PReturnStatus_t status, uint16_t length)
Sends a function result to the PC via the ChannelToPC endpoint.
Definition: HelperFunctions.c:49
WatchDogTimerCb
static void WatchDogTimerCb(uint32_t nParam)
Timer callback function to clear the watchdog timer. Should not be called directly.
Definition: HelperFunctions.c:280