Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Revision 72:35ea0b4e725b, committed 2020-04-24
- Comitter:
- Vkadaba
- Date:
- Fri Apr 24 06:37:01 2020 +0000
- Parent:
- 71:7b5ebd969aa7
- Commit message:
- Added admw_SetExtVrefBufferMode functionality:; updated the config files ; Bumped the FW version to 1.20.0080
Changed in this revision
--- a/bridge_4w_load_cell_config.c Thu Apr 23 08:34:45 2020 +0000
+++ b/bridge_4w_load_cell_config.c Fri Apr 24 06:37:01 2020 +0000
@@ -59,6 +59,7 @@
.vBiasEnable = false,
.RSenseValue = 1000,
.groundSwitch = ADMW1001_ADC_GND_SW_CLOSED,
+ .extVrefBuffMode = ADMW1001_VREF_BUFF_MODE_DISABLE_BOTH,
.fifoNumCycles = 1,
},
.channels = {
--- a/i2c0_sensirionSHT3X_config.c Thu Apr 23 08:34:45 2020 +0000
+++ b/i2c0_sensirionSHT3X_config.c Fri Apr 24 06:37:01 2020 +0000
@@ -56,6 +56,7 @@
.dataReadyMode = ADMW1001_DATAREADY_PER_CYCLE,
.cycleInterval = 0,
.excitationState = ADMW1001_ADC_EXC_STATE_CYCLE_POWER,
+ .extVrefBuffMode = ADMW1001_VREF_BUFF_MODE_DISABLE_BOTH,
.fifoNumCycles = 1,
},
.channels = {
--- a/inc/admw1001/admw1001_config.h Thu Apr 23 08:34:45 2020 +0000
+++ b/inc/admw1001/admw1001_config.h Fri Apr 24 06:37:01 2020 +0000
@@ -121,6 +121,18 @@
} ADMW1001_POWER_MODE;
+/*! ADMW1001 External Vref Buffer Mode options */
+typedef enum
+{
+ ADMW1001_VREF_BUFF_MODE_DISABLE_BOTH = 0,
+ /*!< Both Vref+ and Vref- buffers to be disabled */
+ ADMW1001_VREF_BUFF_MODE_ONLY_POS,
+ /*!< only Vref+ buffer to be disabled */
+ ADMW1001_VREF_BUFF_MODE_ONLY_NEG,
+ /*!< Only Vref- buffers to be disabled */
+ ADMW1001_VREF_BUFF_MODE_ENABLE_BOTH,
+ /*!< Both Vref+ and Vref- buffers to be Enabled */
+} ADMW1001_VREF_BUFFER_MODE;
/*! ADMW1001 measurement unit options
*
@@ -399,7 +411,9 @@
float32_t AVDDVoltage;
/*!< AVDD Voltage.
*/
- uint32_t reserved1[1];
+ uint8_t extVrefBuffMode;
+ /*!< External Vref Buff mode.
+ uint32_t reserved1[3];
/*!< Reserved for future use and ensure word alignment.
*/
--- a/inc/mbedVersion.h Thu Apr 23 08:34:45 2020 +0000 +++ b/inc/mbedVersion.h Fri Apr 24 06:37:01 2020 +0000 @@ -22,8 +22,8 @@ * environment. */ #define MBED_HOST_MAJOR 0x01 -#define MBED_HOST_MINOR 0x17 -#define MBED_HOST_BUILD 0x0075 +#define MBED_HOST_MINOR 0x20 +#define MBED_HOST_BUILD 0x0080 #endif
--- a/rtd_3w_pt100_config.c Thu Apr 23 08:34:45 2020 +0000
+++ b/rtd_3w_pt100_config.c Fri Apr 24 06:37:01 2020 +0000
@@ -59,6 +59,7 @@
.vBiasEnable = false,
.RSenseValue = 1000,
.groundSwitch = ADMW1001_ADC_GND_SW_OPEN,
+ .extVrefBuffMode = ADMW1001_VREF_BUFF_MODE_DISABLE_BOTH,
.fifoNumCycles = 1,
},
.channels = {
--- a/rtd_4w_config.c Thu Apr 23 08:34:45 2020 +0000
+++ b/rtd_4w_config.c Fri Apr 24 06:37:01 2020 +0000
@@ -59,6 +59,7 @@
.vBiasEnable = false,
.RSenseValue = 1000,
.groundSwitch = ADMW1001_ADC_GND_SW_OPEN,
+ .extVrefBuffMode = ADMW1001_VREF_BUFF_MODE_DISABLE_BOTH,
.fifoNumCycles = 1,
},
.channels = {
--- a/src/admw_1001.c Thu Apr 23 08:34:45 2020 +0000
+++ b/src/admw_1001.c Fri Apr 24 06:37:01 2020 +0000
@@ -1063,6 +1063,36 @@
return ADMW_SUCCESS;
}
+static ADMW_RESULT admw_SetExtVrefBufferMode(
+ ADMW_DEVICE_HANDLE hDevice,
+ ADMW1001_VREF_BUFFER_MODE extVrefBufferMode)
+{
+ ADMW_CORE_EXT_VBUFF_t VrefBuffReg = { 0 };
+
+ if (extVrefBufferMode == ADMW1001_VREF_BUFF_MODE_DISABLE_BOTH)
+ {
+ VrefBuffReg.EXT_VBUFF = CORE_EXT_VBUFF_BOTH_INACTIVE_MODE;
+ }
+ else if (extVrefBufferMode == ADMW1001_VREF_BUFF_MODE_ONLY_POS)
+ {
+ VrefBuffReg.EXT_VBUFF = CORE_EXT_VBUFF_ONLY_VPOS_MODE;
+ }
+ else if (extVrefBufferMode == ADMW1001_VREF_BUFF_MODE_ENABLE_BOTH)
+ {
+ VrefBuffReg.EXT_VBUFF = CORE_EXT_VBUFF_BOTH_ACTIVE_MODE;
+ }
+ else
+ {
+ ADMW_LOG_ERROR("Unsupported Ext Vref Buffer mode %d specified", extVrefBufferMode);
+ return ADMW_INVALID_PARAM;
+ }
+
+ WRITE_REG_U8(hDevice, VrefBuffReg.VALUE8, CORE_EXT_VBUFF);
+
+ return ADMW_SUCCESS;
+
+}
+
ADMW_RESULT admw1001_SetMeasurementConfig(
ADMW_DEVICE_HANDLE hDevice,
ADMW1001_MEASUREMENT_CONFIG *pMeasConfig)
@@ -1127,6 +1157,12 @@
ADMW_LOG_ERROR("Failed to set External reference Voltage");
return eRet;
}
+ eRet = admw_SetExtVrefBufferMode(hDevice, (ADMW1001_VREF_BUFFER_MODE)pMeasConfig->extVrefBuffMode);
+ if (eRet != ADMW_SUCCESS)
+ {
+ ADMW_LOG_ERROR("Failed to set External Vref Buffer Mode");
+ return eRet;
+ }
return ADMW_SUCCESS;
}
--- a/thermocouple_typeJ_cjc0_config.c Thu Apr 23 08:34:45 2020 +0000
+++ b/thermocouple_typeJ_cjc0_config.c Fri Apr 24 06:37:01 2020 +0000
@@ -61,6 +61,7 @@
.vBiasEnable = true,
.RSenseValue = 1000,
.groundSwitch = ADMW1001_ADC_GND_SW_OPEN,
+ .extVrefBuffMode = ADMW1001_VREF_BUFF_MODE_DISABLE_BOTH,
.fifoNumCycles = 1,
},
.channels = {
--- a/thermocouple_typeK_cjc0_config.c Thu Apr 23 08:34:45 2020 +0000
+++ b/thermocouple_typeK_cjc0_config.c Fri Apr 24 06:37:01 2020 +0000
@@ -63,6 +63,7 @@
.vBiasEnable = true,
.RSenseValue = 1000,
.groundSwitch = ADMW1001_ADC_GND_SW_OPEN,
+ .extVrefBuffMode = ADMW1001_VREF_BUFF_MODE_DISABLE_BOTH,
.fifoNumCycles = 1,
},
.channels = {
--- a/thermocouple_typeT_cjc0_config.c Thu Apr 23 08:34:45 2020 +0000
+++ b/thermocouple_typeT_cjc0_config.c Fri Apr 24 06:37:01 2020 +0000
@@ -58,6 +58,7 @@
.vBiasEnable = true,
.RSenseValue = 1000,
.groundSwitch = ADMW1001_ADC_GND_SW_OPEN,
+ .extVrefBuffMode = ADMW1001_VREF_BUFF_MODE_DISABLE_BOTH,
.fifoNumCycles = 1,
},
.channels = {