AD4130 Mbed IIO Firmware

Dependencies:   tempsensors sdp_k1_sdram

Committer:
MPhalke@MPHALKE-L02.ad.analog.com
Date:
Fri Jul 15 17:47:44 2022 +0530
Revision:
2:871d585d96ee
AD4130 firmware - initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 1 /*************************************************************************//**
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 2 * @file ad4130_thermocouple_config.c
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 3 * @brief Thermocouple user configurations file for AD4130 device
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 4 ******************************************************************************
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 5 * Copyright (c) 2022 Analog Devices, Inc.
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 6 * All rights reserved.
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 7 *
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 8 * This software is proprietary to Analog Devices, Inc. and its licensors.
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 9 * By using this software you agree to the terms of the associated
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 10 * Analog Devices Software License Agreement.
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 11 *****************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 12
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 13 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 14 /***************************** Include Files **********************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 15 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 16
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 17 #include "app_config.h"
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 18
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 19 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 20 /********************** Macros and Constants Definition ***********************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 21 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 22
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 23 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 24 /********************** Variables and User Defined Data Types *****************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 25 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 26
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 27 /* AD4130 device initialization parameters */
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 28 struct ad413x_init_param ad4130_thermocouple_config_params = {
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 29 .spi_init = &spi_init_params,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 30
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 31 /* Setup (Preset) Configurations */
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 32 .preset = {
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 33 // Setup 0 (Chn0)
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 34 {
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 35 .ref_buf = {
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 36 .ref_buf_p_en = true,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 37 .ref_buf_m_en = true,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 38 },
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 39 .ref_sel = AD413X_REFOUT_AVSS,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 40 .gain = AD413X_GAIN_128,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 41 .filter = AD4130_FILTER_TYPE,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 42 .s_time = AD413X_32_MCLK
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 43 },
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 44 // Setup 1 (Chn1)
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 45 {
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 46 .ref_buf = {
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 47 .ref_buf_p_en = true,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 48 .ref_buf_m_en = true,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 49 },
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 50 #if defined(USE_CJC_AS_RTD)
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 51 .ref_sel = AD413X_REFIN1,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 52 .iout0_exc_current = AD413X_EXC_200UA,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 53 #else
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 54 .ref_sel = AD413X_REFOUT_AVSS,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 55 #endif
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 56 .gain = AD413X_GAIN_1,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 57 .filter = AD4130_FILTER_TYPE,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 58 .s_time = AD413X_32_MCLK
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 59 },
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 60 },
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 61
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 62 /* Chnnel Configurations */
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 63 .ch = {
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 64 // Chn0 (TC)
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 65 {
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 66 .preset = AD413X_PRESET_0,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 67 .enable = 1,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 68 .ain_p = AD413X_AIN2,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 69 .ain_m = AD413X_AIN3
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 70 },
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 71 // Chn1 (CJC)
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 72 {
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 73 .preset = AD413X_PRESET_1,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 74 .enable = 1,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 75 .ain_p = AD413X_AIN4,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 76 .ain_m = AD413X_AIN5,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 77 #if defined(USE_CJC_AS_RTD)
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 78 .iout0_exc_input = AD413X_AIN0,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 79 #endif
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 80 },
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 81 },
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 82
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 83 .chip_id = AD4130_8,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 84 .mclk = AD413X_INT_76_8_KHZ_OUT_OFF,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 85 .bipolar = true,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 86 .int_ref = AD413X_INTREF_1_25V,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 87 .standby_ctrl = {
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 88 .standby_int_ref_en = true,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 89 .standby_vbias_en = true
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 90 },
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 91 .v_bias = NO_OS_BIT(2), // V_Bias on AIN2
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 92 .data_stat = 0,
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 93 .spi_crc_en = 0
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 94 };