Host API Example for the ADMW1001

Committer:
Vkadaba
Date:
Fri Sep 27 05:23:04 2019 +0000
Revision:
24:2d2cb6ac71fd
Parent:
23:bb685f35b08b
Replaced license.txt

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Vkadaba 11:8e6023d2e584 1 /*
Vkadaba 15:b5d57daeb7c0 2 Copyright 2019 (c) Analog Devices, Inc.
Vkadaba 11:8e6023d2e584 3
Vkadaba 11:8e6023d2e584 4 All rights reserved.
Vkadaba 11:8e6023d2e584 5
Vkadaba 11:8e6023d2e584 6 Redistribution and use in source and binary forms, with or without
Vkadaba 11:8e6023d2e584 7 modification, are permitted provided that the following conditions are met:
Vkadaba 11:8e6023d2e584 8 - Redistributions of source code must retain the above copyright
Vkadaba 11:8e6023d2e584 9 notice, this list of conditions and the following disclaimer.
Vkadaba 11:8e6023d2e584 10 - Redistributions in binary form must reproduce the above copyright
Vkadaba 11:8e6023d2e584 11 notice, this list of conditions and the following disclaimer in
Vkadaba 11:8e6023d2e584 12 the documentation and/or other materials provided with the
Vkadaba 11:8e6023d2e584 13 distribution.
Vkadaba 11:8e6023d2e584 14 - Neither the name of Analog Devices, Inc. nor the names of its
Vkadaba 11:8e6023d2e584 15 contributors may be used to endorse or promote products derived
Vkadaba 11:8e6023d2e584 16 from this software without specific prior written permission.
Vkadaba 11:8e6023d2e584 17 - The use of this software may or may not infringe the patent rights
Vkadaba 11:8e6023d2e584 18 of one or more patent holders. This license does not release you
Vkadaba 11:8e6023d2e584 19 from the requirement that you obtain separate licenses from these
Vkadaba 11:8e6023d2e584 20 patent holders to use this software.
Vkadaba 11:8e6023d2e584 21 - Use of the software either in source or binary form, must be run
Vkadaba 11:8e6023d2e584 22 on or directly connected to an Analog Devices Inc. component.
Vkadaba 11:8e6023d2e584 23
Vkadaba 11:8e6023d2e584 24 THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES "AS IS" AND ANY EXPRESS OR
Vkadaba 11:8e6023d2e584 25 IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT,
Vkadaba 11:8e6023d2e584 26 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
Vkadaba 11:8e6023d2e584 27 IN NO EVENT SHALL ANALOG DEVICES BE LIABLE FOR ANY DIRECT, INDIRECT,
Vkadaba 11:8e6023d2e584 28 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
Vkadaba 11:8e6023d2e584 29 LIMITED TO, INTELLECTUAL PROPERTY RIGHTS, PROCUREMENT OF SUBSTITUTE GOODS OR
Vkadaba 11:8e6023d2e584 30 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
Vkadaba 11:8e6023d2e584 31 CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
Vkadaba 11:8e6023d2e584 32 OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
Vkadaba 11:8e6023d2e584 33 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Vkadaba 11:8e6023d2e584 34 *
Vkadaba 11:8e6023d2e584 35 *****************************************************************************/
Vkadaba 11:8e6023d2e584 36
Vkadaba 11:8e6023d2e584 37 /*!
Vkadaba 11:8e6023d2e584 38 ******************************************************************************
Vkadaba 11:8e6023d2e584 39 * @file:
Vkadaba 11:8e6023d2e584 40 * @brief:
Vkadaba 11:8e6023d2e584 41 *-----------------------------------------------------------------------------
Vkadaba 11:8e6023d2e584 42 */
Vkadaba 11:8e6023d2e584 43 #include "inc/admw_config_types.h"
Vkadaba 11:8e6023d2e584 44
Vkadaba 16:327cea5a86e9 45 ADMW_CONFIG sensor2_bridge_4w_load_cell_config= {
Vkadaba 13:97cb32670539 46 .versionId = { .major = 2, .minor = 0 },
Vkadaba 11:8e6023d2e584 47 .productId = ADMW_PRODUCT_ID_ADMW1001,
Vkadaba 11:8e6023d2e584 48 .admw1001 = {
Vkadaba 11:8e6023d2e584 49 .power = {
Vkadaba 11:8e6023d2e584 50 .powerMode = ADMW1001_POWER_MODE_ACTIVE,
Vkadaba 11:8e6023d2e584 51 },
Vkadaba 11:8e6023d2e584 52 .measurement = {
Vkadaba 11:8e6023d2e584 53 .operatingMode = ADMW1001_OPERATING_MODE_SINGLECYCLE,
Vkadaba 11:8e6023d2e584 54 .dataReadyMode = ADMW1001_DATAREADY_PER_CYCLE,
Vkadaba 23:bb685f35b08b 55 .externalRef1Value = 1000.123,
Vkadaba 23:bb685f35b08b 56 .vBiasEnable = true,
Vkadaba 11:8e6023d2e584 57 },
Vkadaba 11:8e6023d2e584 58 .diagnostics = {
Vkadaba 11:8e6023d2e584 59 .disableGlobalDiag = true,
Vkadaba 11:8e6023d2e584 60 .disableMeasurementDiag = true,
Vkadaba 11:8e6023d2e584 61 .osdFrequency = ADMW1001_OPEN_SENSOR_DIAGNOSTICS_DISABLED,
Vkadaba 23:bb685f35b08b 62 },
Vkadaba 11:8e6023d2e584 63 .channels = {
Vkadaba 23:bb685f35b08b 64 [ADMW1001_CH_ID_ANLG_2_UNIVERSAL] = {
Vkadaba 23:bb685f35b08b 65 .enableChannel = true,
Vkadaba 18:cbf514cce921 66 .measurementsPerCycle = 10,
Vkadaba 23:bb685f35b08b 67 .extraSettlingTime = 0.00050000002374872565,
Vkadaba 11:8e6023d2e584 68 .disablePublishing = false,
Vkadaba 23:bb685f35b08b 69
Vkadaba 23:bb685f35b08b 70 .measurementUnit = ADMW1001_MEASUREMENT_UNIT_UNSPECIFIED,
Vkadaba 23:bb685f35b08b 71 .lowThreshold = 0,
Vkadaba 11:8e6023d2e584 72 .highThreshold = 200,
Vkadaba 23:bb685f35b08b 73 .adcChannelConfig = {
Vkadaba 11:8e6023d2e584 74 .sensor = ADMW1001_ADC_SENSOR_BRIDGE_4WIRE_1,
Vkadaba 11:8e6023d2e584 75 .gain = ADMW1001_ADC_GAIN_8X,
Vkadaba 11:8e6023d2e584 76 .current = {
Vkadaba 18:cbf514cce921 77 .excitationState = ADMW1001_ADC_EXC_STATE_OFF,
Vkadaba 23:bb685f35b08b 78 .outputLevel = ADMW1001_ADC_NO_EXTERNAL_EXC_CURRENT,
Vkadaba 11:8e6023d2e584 79 },
Vkadaba 11:8e6023d2e584 80 .filter = {
Vkadaba 11:8e6023d2e584 81 .type = ADMW1001_ADC_FILTER_SINC3,
Vkadaba 11:8e6023d2e584 82 .sf = 125,
Vkadaba 18:cbf514cce921 83 .chopMode = ADMW1001_CHOP_MD_SW,
Vkadaba 11:8e6023d2e584 84 .notch1p2 = false,
Vkadaba 11:8e6023d2e584 85 .groundSwitch = ADMW1001_ADC_GND_SW_CLOSED,
Vkadaba 11:8e6023d2e584 86 },
Vkadaba 11:8e6023d2e584 87 .reference = {
Vkadaba 23:bb685f35b08b 88 ADMW1001_ADC_REFERENCE_VOLTAGE_AVDD,
Vkadaba 11:8e6023d2e584 89 },
Vkadaba 11:8e6023d2e584 90 },
Vkadaba 11:8e6023d2e584 91 },
Vkadaba 11:8e6023d2e584 92 },
Vkadaba 11:8e6023d2e584 93 },
Vkadaba 11:8e6023d2e584 94 };