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_user_config.h
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 3 * @brief Header for AD4130 user configuration file
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 4 ******************************************************************************
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 5 * Copyright (c) 2020, 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 #ifndef _AD4130_USER_CONFIG_H_
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 14 #define _AD4130_USER_CONFIG_H_
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 Files **********************************/
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 #include <stdint.h>
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 21 #include "ad413x.h"
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 /********************** Macros and Constants Definition ***********************/
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 /* Select channel config for default user config (applicable to all channels) */
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 28 //#define DIFFERENTIAL_CHN_CFG // Uncomment to select differential config
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 29
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 30 /* Select FS (or ODR) for default user config (applicable to all channels) */
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 31 #if (FS_CONFIG_VALUE != 0)
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 32 #define AD4130_FS_CONFIG FS_CONFIG_VALUE
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 33 #else
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 34 #define AD4130_FS_CONFIG 1 // ODR = 2.4KSPS (max)
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 35 #endif
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 36
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 37 /* Filter type for default user config
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 38 * Note: Applicable for all setups to keep the same ODR for all channels */
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 39 #define AD4130_FILTER_TYPE AD413X_SYNC3_STANDALONE
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 40
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 41 /* Scaler factor used in FS to ODR conversion (For SINC3/4 filter) */
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 42 #define FS_TO_ODR_CONV_SCALER (32U * AD4130_FS_CONFIG)
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 43
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 44 /* Select the positive and negative analog inputs for each channel */
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 45 #if defined(DIFFERENTIAL_CHN_CFG)
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 46 #define CHN0_AINP AD413X_AIN0
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 47 #define CHN0_AINM AD413X_AIN1
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 48 #define CHN1_AINP AD413X_AIN2
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 49 #define CHN1_AINM AD413X_AIN3
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 50 #define CHN2_AINP AD413X_AIN4
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 51 #define CHN2_AINM AD413X_AIN5
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 52 #define CHN3_AINP AD413X_AIN6
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 53 #define CHN3_AINM AD413X_AIN7
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 54 #define CHN4_AINP AD413X_AIN8
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 55 #define CHN4_AINM AD413X_AIN9
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 56 #define CHN5_AINP AD413X_AIN10
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 57 #define CHN5_AINM AD413X_AIN11
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 58 #define CHN6_AINP AD413X_AIN12
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 59 #define CHN6_AINM AD413X_AIN13
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 60 #define CHN7_AINP AD413X_AIN14
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 61 #define CHN7_AINM AD413X_AIN15
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 62 #define ADC_USER_CHANNELS ADC_DIFFERENTIAL_CHNS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 63 #else
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 64 #define CHN0_AINP AD413X_AIN0
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 65 #define CHN0_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 66 #define CHN1_AINP AD413X_AIN1
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 67 #define CHN1_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 68 #define CHN2_AINP AD413X_AIN2
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 69 #define CHN2_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 70 #define CHN3_AINP AD413X_AIN3
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 71 #define CHN3_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 72 #define CHN4_AINP AD413X_AIN4
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 73 #define CHN4_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 74 #define CHN5_AINP AD413X_AIN5
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 75 #define CHN5_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 76 #define CHN6_AINP AD413X_AIN6
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 77 #define CHN6_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 78 #define CHN7_AINP AD413X_AIN7
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 79 #define CHN7_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 80 #define CHN8_AINP AD413X_AIN8
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 81 #define CHN8_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 82 #define CHN9_AINP AD413X_AIN9
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 83 #define CHN9_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 84 #define CHN10_AINP AD413X_AIN10
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 85 #define CHN10_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 86 #define CHN11_AINP AD413X_AIN11
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 87 #define CHN11_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 88 #define CHN12_AINP AD413X_AIN12
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 89 #define CHN12_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 90 #define CHN13_AINP AD413X_AIN13
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 91 #define CHN13_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 92 #define CHN14_AINP AD413X_AIN14
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 93 #define CHN14_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 94 #define CHN15_AINP AD413X_AIN15
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 95 #define CHN15_AINM AD413X_AVSS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 96 #define ADC_USER_CHANNELS ADC_PSEUDO_DIFF_CHNS
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 97 #endif
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 98
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 99 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 100 /********************** Public/Extern Declarations ****************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 101 /******************************************************************************/
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 102
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 103 extern struct ad413x_init_param ad4130_user_config_params;
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 104
MPhalke@MPHALKE-L02.ad.analog.com 2:871d585d96ee 105 #endif /* end of _AD4130_USER_CONFIG_H_ */