Merge branch 'feature/bringup_tsens_esp32c6' into 'master'

temperature_sensor: Add support on ESP32-C6 (No calibration)

Closes IDF-5322

See merge request espressif/esp-idf!20698
This commit is contained in:
C.S.M
2022-11-23 12:46:21 +08:00
12 changed files with 248 additions and 27 deletions

View File

@@ -75,21 +75,7 @@ esp_err_t esp_efuse_rtc_calib_get_cal_voltage(int version, int atten, uint32_t*
esp_err_t esp_efuse_rtc_calib_get_tsens_val(float* tsens_cal)
{
uint32_t version = esp_efuse_rtc_calib_get_ver();
if (version != 1) {
*tsens_cal = 0.0;
return ESP_ERR_NOT_SUPPORTED;
}
const esp_efuse_desc_t** cal_temp_efuse;
cal_temp_efuse = ESP_EFUSE_TEMP_CALIB;
int cal_temp_size = esp_efuse_get_field_size(cal_temp_efuse);
assert(cal_temp_size == 9);
uint32_t cal_temp = 0;
esp_err_t err = esp_efuse_read_field_blob(cal_temp_efuse, &cal_temp, cal_temp_size);
assert(err == ESP_OK);
(void)err;
// BIT(8) stands for sign: 1: negtive, 0: positive
*tsens_cal = ((cal_temp & BIT(8)) != 0)? -(uint8_t)cal_temp: (uint8_t)cal_temp;
// Currently calibration is not supported on ESP32-C6, IDF-5236
*tsens_cal = 0;
return ESP_OK;
}