. Reverting Mbed firmware to support customers using ADMW1001 device firmware v82.25. 2. New Mbed firmware will be available when ADMW1001 device firmware is released to the public. 3. SPI speed is reduced to 700KHz 4.The program compiled and tested with device FW v82.25

Committer:
Vkadaba
Date:
Fri Mar 06 17:03:18 2020 +0000
Revision:
51:e013f4d2fb9a
Parent:
48:5731f1aa2c5a
1. Reverting Mbed firmware to support customers using ADMW1001 device firmware v82.25.; 2. New Mbed firmware will be available when ADMW1001 device firmware is released to the public. ; 3. SPI speed is reduced to 700KHz

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Vkadaba 34:b60ee1e0af2b 1
Vkadaba 34:b60ee1e0af2b 2 /*!
Vkadaba 34:b60ee1e0af2b 3 ******************************************************************************
Vkadaba 34:b60ee1e0af2b 4 * @file: config.c
Vkadaba 34:b60ee1e0af2b 5 * @brief:
Vkadaba 34:b60ee1e0af2b 6 *-----------------------------------------------------------------------------
Vkadaba 34:b60ee1e0af2b 7 *
Vkadaba 34:b60ee1e0af2b 8 Copyright (c) 2018 Analog Devices, Inc.
Vkadaba 34:b60ee1e0af2b 9
Vkadaba 34:b60ee1e0af2b 10 All rights reserved.
Vkadaba 34:b60ee1e0af2b 11
Vkadaba 34:b60ee1e0af2b 12 Redistribution and use in source and binary forms, with or without modification,
Vkadaba 34:b60ee1e0af2b 13 are permitted provided that the following conditions are met:
Vkadaba 34:b60ee1e0af2b 14 - Redistributions of source code must retain the above copyright notice,
Vkadaba 34:b60ee1e0af2b 15 this list of conditions and the following disclaimer.
Vkadaba 34:b60ee1e0af2b 16 - Redistributions in binary form must reproduce the above copyright notice,
Vkadaba 34:b60ee1e0af2b 17 this list of conditions and the following disclaimer in the documentation
Vkadaba 34:b60ee1e0af2b 18 and/or other materials provided with the distribution.
Vkadaba 34:b60ee1e0af2b 19 - Modified versions of the software must be conspicuously marked as such.
Vkadaba 34:b60ee1e0af2b 20 - This software is licensed solely and exclusively for use with processors
Vkadaba 34:b60ee1e0af2b 21 manufactured by or for Analog Devices, Inc.
Vkadaba 34:b60ee1e0af2b 22 - This software may not be combined or merged with other code in any manner
Vkadaba 34:b60ee1e0af2b 23 that would cause the software to become subject to terms and conditions
Vkadaba 34:b60ee1e0af2b 24 which differ from those listed here.
Vkadaba 34:b60ee1e0af2b 25 - Neither the name of Analog Devices, Inc. nor the names of its
Vkadaba 34:b60ee1e0af2b 26 contributors may be used to endorse or promote products derived
Vkadaba 34:b60ee1e0af2b 27 from this software without specific prior written permission.
Vkadaba 34:b60ee1e0af2b 28 - The use of this software may or may not infringe the patent rights of one
Vkadaba 34:b60ee1e0af2b 29 or more patent holders. This license does not release you from the
Vkadaba 34:b60ee1e0af2b 30 requirement that you obtain separate licenses from these patent holders
Vkadaba 34:b60ee1e0af2b 31 to use this software.
Vkadaba 34:b60ee1e0af2b 32
Vkadaba 34:b60ee1e0af2b 33 THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES, INC. AND CONTRIBUTORS "AS IS" AND ANY
Vkadaba 34:b60ee1e0af2b 34 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT,
Vkadaba 34:b60ee1e0af2b 35 TITLE, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
Vkadaba 34:b60ee1e0af2b 36 NO EVENT SHALL ANALOG DEVICES, INC. OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
Vkadaba 34:b60ee1e0af2b 37 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, PUNITIVE OR CONSEQUENTIAL DAMAGES
Vkadaba 34:b60ee1e0af2b 38 (INCLUDING, BUT NOT LIMITED TO, DAMAGES ARISING OUT OF CLAIMS OF INTELLECTUAL
Vkadaba 34:b60ee1e0af2b 39 PROPERTY RIGHTS INFRINGEMENT; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
Vkadaba 34:b60ee1e0af2b 40 OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
Vkadaba 34:b60ee1e0af2b 41 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
Vkadaba 34:b60ee1e0af2b 42 NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
Vkadaba 34:b60ee1e0af2b 43 EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Vkadaba 34:b60ee1e0af2b 44 *
Vkadaba 34:b60ee1e0af2b 45 *****************************************************************************/
Vkadaba 34:b60ee1e0af2b 46
Vkadaba 34:b60ee1e0af2b 47 #include "inc/admw_config_types.h"
Vkadaba 34:b60ee1e0af2b 48
Vkadaba 34:b60ee1e0af2b 49 ADMW_CONFIG thermocouple_typeK_cjc0_config= {
Vkadaba 34:b60ee1e0af2b 50 .versionId = { .major = 2, .minor = 0 },
Vkadaba 34:b60ee1e0af2b 51 .productId = ADMW_PRODUCT_ID_ADMW1001,
Vkadaba 34:b60ee1e0af2b 52 .admw1001 = {
Vkadaba 34:b60ee1e0af2b 53 .power = {
Vkadaba 34:b60ee1e0af2b 54 .powerMode = ADMW1001_POWER_MODE_ACTIVE,
Vkadaba 34:b60ee1e0af2b 55 },
Vkadaba 34:b60ee1e0af2b 56 .measurement = {
Vkadaba 51:e013f4d2fb9a 57 .externalRefVoltage=0.0,
Vkadaba 34:b60ee1e0af2b 58 .operatingMode = ADMW1001_OPERATING_MODE_CONTINUOUS,
Vkadaba 51:e013f4d2fb9a 59 .dataReadyMode = ADMW1001_DATAREADY_PER_CYCLE, // FIX: Temporarily all values from json are hardcoded to this one in the Contracts.FileGenerator - > file translations!!
Vkadaba 34:b60ee1e0af2b 60 .cycleInterval = 0,
Vkadaba 34:b60ee1e0af2b 61 .vBiasEnable = true,
Vkadaba 34:b60ee1e0af2b 62 .RSenseValue = 1000.0,
Vkadaba 34:b60ee1e0af2b 63 },
Vkadaba 34:b60ee1e0af2b 64 .diagnostics = {
Vkadaba 34:b60ee1e0af2b 65 .disableGlobalDiag = true,
Vkadaba 34:b60ee1e0af2b 66 .disableMeasurementDiag = true,
Vkadaba 51:e013f4d2fb9a 67 .osdFrequency = ADMW1001_OPEN_SENSOR_DIAGNOSTICS_DISABLED,
Vkadaba 34:b60ee1e0af2b 68 },
Vkadaba 34:b60ee1e0af2b 69 .channels = {
Vkadaba 34:b60ee1e0af2b 70 [ADMW1001_CH_ID_ANLG_1_UNIVERSAL] = {
Vkadaba 34:b60ee1e0af2b 71 .enableChannel = true,
Vkadaba 34:b60ee1e0af2b 72 .disablePublishing = false,
Vkadaba 34:b60ee1e0af2b 73 .compensationChannel = ADMW1001_CH_ID_NONE,
Vkadaba 34:b60ee1e0af2b 74 .lutSelect = ADMW1001_LUT_DEFAULT,
Vkadaba 51:e013f4d2fb9a 75 .measurementUnit = ADMW1001_MEASUREMENT_UNIT_CELSIUS,
Vkadaba 51:e013f4d2fb9a 76 .lowThreshold = -50,
Vkadaba 51:e013f4d2fb9a 77 .highThreshold = 250,
Vkadaba 51:e013f4d2fb9a 78 .offsetAdjustment = 0.0,
Vkadaba 51:e013f4d2fb9a 79 .gainAdjustment = 0.0,
Vkadaba 51:e013f4d2fb9a 80 .sensorParameter = 0.0,
Vkadaba 51:e013f4d2fb9a 81 .measurementsPerCycle = 10,
Vkadaba 51:e013f4d2fb9a 82 .cycleSkipCount = 0,
Vkadaba 51:e013f4d2fb9a 83 .extraSettlingTime = 0,
Vkadaba 51:e013f4d2fb9a 84 .priority = 0,
Vkadaba 34:b60ee1e0af2b 85 .adcChannelConfig = {
Vkadaba 34:b60ee1e0af2b 86 .sensor = ADMW1001_ADC_SENSOR_RTD_2WIRE_PT100,
Vkadaba 34:b60ee1e0af2b 87 .rtdCurve = ADMW1001_ADC_RTD_CURVE_EUROPEAN,
Vkadaba 34:b60ee1e0af2b 88 .gain = ADMW1001_ADC_GAIN_1X,
Vkadaba 34:b60ee1e0af2b 89 .current = {
Vkadaba 51:e013f4d2fb9a 90 .excitationState= ADMW1001_ADC_EXC_STATE_ALWAYS_ON,
Vkadaba 34:b60ee1e0af2b 91 .outputLevel = ADMW1001_ADC_EXC_CURRENT_250uA,
Vkadaba 51:e013f4d2fb9a 92 .diodeRatio = 0,
Vkadaba 34:b60ee1e0af2b 93 },
Vkadaba 34:b60ee1e0af2b 94 .filter = {
Vkadaba 34:b60ee1e0af2b 95 .type = ADMW1001_ADC_FILTER_SINC3,
Vkadaba 34:b60ee1e0af2b 96 .sf = ADMW1001_SF_8P24HZ,
Vkadaba 34:b60ee1e0af2b 97 .chopMode = ADMW1001_CHOP_MD_SW,
Vkadaba 34:b60ee1e0af2b 98 .notch1p2 = false,
Vkadaba 51:e013f4d2fb9a 99 .groundSwitch = ADMW1001_ADC_GND_SW_OPEN
Vkadaba 34:b60ee1e0af2b 100 },
Vkadaba 34:b60ee1e0af2b 101 .reference = ADMW1001_ADC_REFERENCE_VOLTAGE_INTERNAL,
Vkadaba 34:b60ee1e0af2b 102 .bufferBypass = ADMW1001_BUFFER_BYPASSS_DISABLED,
Vkadaba 34:b60ee1e0af2b 103 },
Vkadaba 34:b60ee1e0af2b 104 },
Vkadaba 34:b60ee1e0af2b 105 [ADMW1001_CH_ID_ANLG_1_DIFFERENTIAL] = {
Vkadaba 34:b60ee1e0af2b 106 .enableChannel = true,
Vkadaba 34:b60ee1e0af2b 107 .disablePublishing = false,
Vkadaba 34:b60ee1e0af2b 108 .compensationChannel = ADMW1001_CH_ID_ANLG_1_UNIVERSAL,
Vkadaba 34:b60ee1e0af2b 109 .lutSelect = ADMW1001_LUT_DEFAULT,
Vkadaba 34:b60ee1e0af2b 110 .measurementUnit = ADMW1001_MEASUREMENT_UNIT_CELSIUS,
Vkadaba 34:b60ee1e0af2b 111 .lowThreshold = -50,
Vkadaba 34:b60ee1e0af2b 112 .highThreshold = 250,
Vkadaba 34:b60ee1e0af2b 113 .offsetAdjustment = 0.0,
Vkadaba 34:b60ee1e0af2b 114 .gainAdjustment = 0.0,
Vkadaba 34:b60ee1e0af2b 115 .sensorParameter = 0.0,
Vkadaba 51:e013f4d2fb9a 116 .measurementsPerCycle = 10,
Vkadaba 34:b60ee1e0af2b 117 .cycleSkipCount = 0,
Vkadaba 51:e013f4d2fb9a 118 .extraSettlingTime = 4499.99986449257,
Vkadaba 51:e013f4d2fb9a 119 .priority = 0,
Vkadaba 34:b60ee1e0af2b 120 .adcChannelConfig = {
Vkadaba 34:b60ee1e0af2b 121 .sensor = ADMW1001_ADC_SENSOR_THERMOCOUPLE_K,
Vkadaba 34:b60ee1e0af2b 122 .rtdCurve = ADMW1001_ADC_RTD_CURVE_EUROPEAN,
Vkadaba 34:b60ee1e0af2b 123 .gain = ADMW1001_ADC_GAIN_8X,
Vkadaba 34:b60ee1e0af2b 124 .current = {
Vkadaba 51:e013f4d2fb9a 125 .excitationState= ADMW1001_ADC_EXC_STATE_CYCLE_POWER,
Vkadaba 34:b60ee1e0af2b 126 .outputLevel = ADMW1001_ADC_NO_EXTERNAL_EXC_CURRENT,
Vkadaba 51:e013f4d2fb9a 127 .diodeRatio = 0,
Vkadaba 34:b60ee1e0af2b 128 },
Vkadaba 34:b60ee1e0af2b 129 .filter = {
Vkadaba 34:b60ee1e0af2b 130 .type = ADMW1001_ADC_FILTER_SINC3,
Vkadaba 34:b60ee1e0af2b 131 .sf = ADMW1001_SF_8P24HZ,
Vkadaba 34:b60ee1e0af2b 132 .chopMode = ADMW1001_CHOP_MD_SW,
Vkadaba 51:e013f4d2fb9a 133 .notch1p2 = false,
Vkadaba 51:e013f4d2fb9a 134 .groundSwitch = ADMW1001_ADC_GND_SW_OPEN
Vkadaba 34:b60ee1e0af2b 135 },
Vkadaba 34:b60ee1e0af2b 136 .reference = ADMW1001_ADC_REFERENCE_VOLTAGE_INTERNAL,
Vkadaba 34:b60ee1e0af2b 137 .bufferBypass = ADMW1001_BUFFER_BYPASSS_DISABLED,
Vkadaba 34:b60ee1e0af2b 138 },
Vkadaba 34:b60ee1e0af2b 139 },
Vkadaba 34:b60ee1e0af2b 140 },
Vkadaba 34:b60ee1e0af2b 141 },
Vkadaba 51:e013f4d2fb9a 142 };
Vkadaba 51:e013f4d2fb9a 143