AFBR-S50 API Reference Manual v1.5.6
AFBR-S50 Time-of-Flight Sensor SDK for Embedded Software
|
This file is part of the AFBR-S50 API. More...
#include "argus_def.h"
#include "argus_res.h"
#include "argus_pba.h"
#include "argus_dfm.h"
#include "argus_snm.h"
#include "argus_xtalk.h"
#include "argus_offset.h"
Go to the source code of this file.
Typedefs | |
typedef int32_t | s2pi_slave_t |
Functions | |
status_t | Argus_Init (argus_hnd_t *hnd, s2pi_slave_t spi_slave) |
Initializes the device with default measurement mode. | |
status_t | Argus_InitMode (argus_hnd_t *hnd, s2pi_slave_t spi_slave, argus_mode_t mode) |
Initializes the device with specified measurement mode. | |
status_t | Argus_Reinit (argus_hnd_t *hnd) |
Reinitializes the device with the current measurement mode. | |
status_t | Argus_ReinitMode (argus_hnd_t *hnd, argus_mode_t mode) |
Reinitializes the device with a specified measurement mode. | |
status_t | Argus_Deinit (argus_hnd_t *hnd) |
Deinitializes the API modules and the device. | |
argus_hnd_t * | Argus_CreateHandle (void) |
Creates a new device data handle object to store all internal states. | |
status_t | Argus_DestroyHandle (argus_hnd_t *hnd) |
Destroys a given device data handle object. | |
status_t | Argus_RestoreDeviceState (argus_hnd_t *hnd) |
Restores the device state with a re-write of all register values. | |
uint32_t | Argus_GetAPIVersion (void) |
Gets the version number of the current API library. | |
char const * | Argus_GetBuildNumber (void) |
Gets the build number of the current API library. | |
argus_module_version_t | Argus_GetModuleVersion (argus_hnd_t *hnd) |
Gets the version/variant of the module. | |
char const * | Argus_GetModuleName (argus_hnd_t *hnd) |
Gets the name string of the module. | |
argus_chip_version_t | Argus_GetChipVersion (argus_hnd_t *hnd) |
Gets the version number of the chip. | |
argus_laser_type_t | Argus_GetLaserType (argus_hnd_t *hnd) |
Gets the type number of the device laser. | |
uint32_t | Argus_GetChipID (argus_hnd_t *hnd) |
Gets the unique identification number of the chip. | |
s2pi_slave_t | Argus_GetSPISlave (argus_hnd_t *hnd) |
Gets the SPI hardware slave identifier. | |
status_t | Argus_StartMeasurementTimer (argus_hnd_t *hnd, argus_measurement_ready_callback_t cb) |
Starts the timer based measurement cycle asynchronously. | |
status_t | Argus_StopMeasurementTimer (argus_hnd_t *hnd) |
Stops the timer based measurement cycle. | |
status_t | Argus_TriggerMeasurement (argus_hnd_t *hnd, argus_measurement_ready_callback_t cb) |
Triggers a single measurement frame asynchronously. | |
bool | Argus_IsDataEvaluationPending (argus_hnd_t *hnd) |
Determines whether a data evaluation is pending. | |
bool | Argus_IsTimerMeasurementActive (argus_hnd_t *hnd) |
Determines if the device if active with timer based measurements. | |
status_t | Argus_Abort (argus_hnd_t *hnd) |
Stops the currently ongoing measurements and SPI activity immediately. | |
status_t | Argus_GetStatus (argus_hnd_t *hnd) |
Checks the state of the device/driver. | |
status_t | Argus_Ping (argus_hnd_t *hnd) |
Tests the connection to the device by sending a ping message. | |
status_t | Argus_EvaluateData (argus_hnd_t *hnd, argus_results_t *res) |
Evaluates measurement data from the raw sensor readout data. | |
status_t | Argus_EvaluateDataDebug (argus_hnd_t *hnd, argus_results_t *res, argus_results_debug_t *dbg) |
Evaluates measurement data from the raw sensor readout data. | |
status_t | Argus_ExecuteXtalkCalibrationSequence (argus_hnd_t *hnd) |
Executes a crosstalk calibration measurement. | |
status_t | Argus_ExecuteRelativeRangeOffsetCalibrationSequence (argus_hnd_t *hnd) |
Executes a relative range offset calibration measurement. | |
status_t | Argus_ExecuteAbsoluteRangeOffsetCalibrationSequence (argus_hnd_t *hnd, q9_22_t targetRange) |
Executes an absolute range offset calibration measurement. | |
argus_mode_t | Argus_GetDefaultMeasurementMode (argus_module_version_t module) |
Gets the default measurement mode for a specified module type. | |
status_t | Argus_SetMeasurementMode (argus_hnd_t *hnd, argus_mode_t mode) |
Sets the measurement mode to a specified device. | |
status_t | Argus_ResetMeasurementMode (argus_hnd_t *hnd) |
Resets the measurement mode to a specified device. | |
status_t | Argus_GetMeasurementMode (argus_hnd_t *hnd, argus_mode_t *mode) |
Gets the measurement mode from a specified device. | |
status_t | Argus_SetConfigurationFrameTime (argus_hnd_t *hnd, uint32_t value) |
Sets the frame time to a specified device. | |
status_t | Argus_GetConfigurationFrameTime (argus_hnd_t *hnd, uint32_t *value) |
Gets the frame time from a specified device. | |
status_t | Argus_SetConfigurationSmartPowerSaveEnabled (argus_hnd_t *hnd, bool value) |
Sets the smart power save enabled flag to a specified device. | |
status_t | Argus_GetConfigurationSmartPowerSaveEnabled (argus_hnd_t *hnd, bool *value) |
Gets the smart power save enabled flag from a specified device. | |
status_t | Argus_SetConfigurationDFMMode (argus_hnd_t *hnd, argus_dfm_mode_t value) |
Sets the Dual Frequency Mode (DFM) to a specified device. | |
status_t | Argus_GetConfigurationDFMMode (argus_hnd_t *hnd, argus_dfm_mode_t *value) |
Gets the Dual Frequency Mode (DFM) from a specified device. | |
status_t | Argus_SetConfigurationShotNoiseMonitorMode (argus_hnd_t *hnd, argus_snm_mode_t value) |
Sets the Shot Noise Monitor (SNM) mode to a specified device. | |
status_t | Argus_GetConfigurationShotNoiseMonitorMode (argus_hnd_t *hnd, argus_snm_mode_t *value) |
Gets the Shot Noise Monitor (SNM) mode from a specified device. | |
status_t | Argus_SetConfigurationCrosstalkMonitorMode (argus_hnd_t *hnd, bool value) |
Sets the Crosstalk Monitor (XTM) mode to a specified device. | |
status_t | Argus_GetConfigurationCrosstalkMonitorMode (argus_hnd_t *hnd, bool *value) |
Gets the Crosstalk Monitor (XTM) mode from a specified device. | |
status_t | Argus_SetConfigurationDynamicAdaption (argus_hnd_t *hnd, argus_cfg_dca_t const *value) |
Sets the full DCA module configuration to a specified device. | |
status_t | Argus_GetConfigurationDynamicAdaption (argus_hnd_t *hnd, argus_cfg_dca_t *value) |
Gets the # from a specified device. | |
status_t | Argus_SetConfigurationPixelBinning (argus_hnd_t *hnd, argus_cfg_pba_t const *value) |
Sets the pixel binning configuration parameters to a specified device. | |
status_t | Argus_GetConfigurationPixelBinning (argus_hnd_t *hnd, argus_cfg_pba_t *value) |
Gets the pixel binning configuration parameters from a specified device. | |
status_t | Argus_GetConfigurationUnambiguousRange (argus_hnd_t *hnd, uint32_t *range_mm) |
Gets the current unambiguous range in mm. | |
status_t | Argus_SetCalibrationGlobalRangeOffsets (argus_hnd_t *hnd, q0_15_t offset_low, q0_15_t offset_high) |
Sets the global range offset values to a specified device. | |
status_t | Argus_GetCalibrationGlobalRangeOffsets (argus_hnd_t *hnd, q0_15_t *offset_low, q0_15_t *offset_high) |
Gets the global range offset values from a specified device. | |
status_t | Argus_SetCalibrationPixelRangeOffsets (argus_hnd_t *hnd, argus_cal_offset_table_t const *value) |
Sets the relative pixel offset table to a specified device. | |
status_t | Argus_GetCalibrationPixelRangeOffsets (argus_hnd_t *hnd, argus_cal_offset_table_t *value) |
Gets the relative pixel offset table from a specified device. | |
status_t | Argus_ResetCalibrationPixelRangeOffsets (argus_hnd_t *hnd) |
Resets the relative pixel offset values for the specified device to the factory calibrated default values. | |
void | Argus_GetPixelRangeOffsets_Callback (argus_cal_offset_table_t *offsets, argus_mode_t const mode) |
A callback that returns the external pixel range offsets. | |
status_t | Argus_SetCalibrationRangeOffsetSequenceSampleTime (argus_hnd_t *hnd, uint16_t value) |
Sets the sample time for the range offset calibration sequence. | |
status_t | Argus_GetCalibrationRangeOffsetSequenceSampleTime (argus_hnd_t *hnd, uint16_t *value) |
Gets the sample time for the range offset calibration sequence. | |
status_t | Argus_SetCalibrationCrosstalkPixel2Pixel (argus_hnd_t *hnd, argus_cal_p2pxtalk_t const *value) |
Sets the pixel-to-pixel crosstalk compensation parameters to a specified device. | |
status_t | Argus_GetCalibrationCrosstalkPixel2Pixel (argus_hnd_t *hnd, argus_cal_p2pxtalk_t *value) |
Gets the pixel-to-pixel crosstalk compensation parameters from a specified device. | |
status_t | Argus_SetCalibrationCrosstalkVectorTable (argus_hnd_t *hnd, argus_cal_xtalk_table_t const *value) |
Sets the custom crosstalk vector table to a specified device. | |
status_t | Argus_GetCalibrationCrosstalkVectorTable (argus_hnd_t *hnd, argus_cal_xtalk_table_t *value) |
Gets the custom crosstalk vector table from a specified device. | |
status_t | Argus_ResetCalibrationCrosstalkVectorTable (argus_hnd_t *hnd) |
Resets the crosstalk vector table for the specified device to the factory calibrated default values. | |
status_t | Argus_SetCalibrationCrosstalkSequenceSampleTime (argus_hnd_t *hnd, uint16_t value) |
Sets the sample time for the crosstalk calibration sequence. | |
status_t | Argus_GetCalibrationCrosstalkSequenceSampleTime (argus_hnd_t *hnd, uint16_t *value) |
Gets the sample time for the crosstalk calibration sequence. | |
status_t | Argus_SetCalibrationCrosstalkSequenceAmplitudeThreshold (argus_hnd_t *hnd, uq12_4_t value) |
Sets the max. amplitude threshold for the crosstalk calibration sequence. | |
status_t | Argus_GetCalibrationCrosstalkSequenceAmplitudeThreshold (argus_hnd_t *hnd, uq12_4_t *value) |
Gets the max. amplitude threshold for the crosstalk calibration sequence. | |
status_t | Argus_ClearUserCalibration (argus_hnd_t *hnd) |
Clears all user calibration values from NVM for the specified device. | |
void | Argus_GetCrosstalkVectorTable_Callback (argus_cal_xtalk_table_t *xtalk, argus_mode_t const mode) |
A callback that returns the external crosstalk vector table. | |
status_t | Argus_GetCalibrationGoldenPixel (argus_hnd_t const *hnd, uint8_t *x, uint8_t *y) |
Gets the currently calibrated Golden Pixel coordinates. | |
This file is part of the AFBR-S50 API.
This file provides generic functionality belonging to all devices from the AFBR-S50 product family.
Copyright (c) 2023, Broadcom Inc. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.