Vybhav Kadaba
/
EV-PRO-MW1001_Development_updateFW
Bumped Mbed FW version to 01.20.0080
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 = {