![]() |
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
|
Header file for a set of general purpose iSensor FX3 helper functions. More...
#include "main.h"
Go to the source code of this file.
Typedefs | |
typedef enum DutVoltage | DutVoltage |
Enumerations | |
enum | DutVoltage { Off = 0, On3_3Volts = 1, On5_0Volts = 2 } |
Functions | |
void | AdiConfigureWatchdog () |
Configures the FX3 watchdog timer based on the current board state. More... | |
void | AdiGetBuildDate (uint8_t *outBuf) |
Gets the firmware build date, followed by the build time. More... | |
void | AdiSendStatus (uint32_t status, uint16_t count, CyBool_t isControlEndpoint) |
Sends status back to PC over control endpoint or manual bulk in endpoint. More... | |
CyU3PReturnStatus_t | AdiSetDutSupply (DutVoltage SupplyMode) |
This function configures the DUT supply voltage. More... | |
CyU3PReturnStatus_t | AdiSleepForMicroSeconds (uint32_t numMicroSeconds) |
This function blocks thread execution for a specified number of microseconds. More... | |
void | AdiReturnBulkEndpointData (CyU3PReturnStatus_t status, uint16_t length) |
Sends a function result to the PC via the ChannelToPC endpoint. More... | |
Header file for a set of general purpose iSensor FX3 helper 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.
typedef enum DutVoltage DutVoltage |
Enum of possible DUT supply voltages
enum DutVoltage |
void AdiConfigureWatchdog | ( | ) |
Configures the FX3 watchdog timer based on the current board state.
The watchdog is cleared by a software timer managed in the threadX RTOS. The clear interval is set to 5 seconds less than the watchdog period. If the watchdog timer elapses without being reset (software is locked up) then the FX3 firmware undergoes a hard reset and will reboot onto the second stage bootloader. This will cause an UnexpectedReset event to be raised in the running instance of the FX3Connection (if the FX3 board is connected).
void AdiGetBuildDate | ( | uint8_t * | outBuf | ) |
Gets the firmware build date, followed by the build time.
outBuf | Char array which build date/time is placed into |
void AdiReturnBulkEndpointData | ( | CyU3PReturnStatus_t | status, |
uint16_t | length | ||
) |
Sends a function result to the PC via the ChannelToPC endpoint.
status | The status code to place in the BulkEndpointBuffer (0 - 3) |
length | The number of bytes to send to the PC over the bulk endpoint |
This function is used to allow early returns out of long functions in the case where an invalid setting or operation is detected. Once this function is called, and the result sent to the PC, the function can be safely exited.
void AdiSendStatus | ( | uint32_t | status, |
uint16_t | count, | ||
CyBool_t | isControlEndpoint | ||
) |
Sends status back to PC over control endpoint or manual bulk in endpoint.
status | The status code to send back. Is placed in USBBuffer[0-3] |
count | The number of bytes to send. Must be at least 4 |
isControlEndpoint | Bool indicating if data should be sent over control endpoint or bulk endpoint |
This function will overwrite the data in USBBuffer[0-3]. If you need to send extra data along with the status, it must be placed starting at USBBuffer[4].
CyU3PReturnStatus_t AdiSetDutSupply | ( | DutVoltage | SupplyMode | ) |
This function configures the DUT supply voltage.
SupplyMode | The DUT Voltage to set (Off, 3.3V, 5V) |
This function sets the control pins on the LTC1470 power switch IC. This IC allows software to power cycle a DUT or give it 3.3V/5V to Vdd. This feature only works on the in-house ADI iSensors FX3 Eval board. It does not function on the iSensor FX3 Eval board based on the Cypress Explorer kit.
CyU3PReturnStatus_t AdiSleepForMicroSeconds | ( | uint32_t | numMicroSeconds | ) |
This function blocks thread execution for a specified number of microseconds.
numMicroSeconds | The number of microseconds to stall for. |