1Temperature Sensor 2=================== 3 4.. only:: esp32s3 5 6 .. warning:: 7 8 This feature is not supported in v4.4 9 10Overview 11-------- 12 13The {IDF_TARGET_NAME} has a built-in temperature sensor used to measure the chip's internal temperature, and hard to measure the environmental temperature accurately. Being built-in means that the temperature sensor should work on any {IDF_TARGET_NAME} regardless of what board the chip is embedded in. The temperature sensor module contains an 8-bit Sigma-Delta ADC and a temperature offset DAC. 14 15The conversion relationship is the first columns of the table below. Among them, offset = 0 is the main measurement option, and other values are extended measurement options. 16 17+--------+------------------------+------------------------+ 18| offset | measure range(Celsius) | measure error(Celsius) | 19+========+========================+========================+ 20| -2 | 50 ~ 125 | < 3 | 21+--------+------------------------+------------------------+ 22| -1 | 20 ~ 100 | < 2 | 23+--------+------------------------+------------------------+ 24| 0 | -10 ~ 80 | < 1 | 25+--------+------------------------+------------------------+ 26| 1 | -30 ~ 50 | < 2 | 27+--------+------------------------+------------------------+ 28| 2 | -40 ~ 20 | < 3 | 29+--------+------------------------+------------------------+ 30 31Driver Usage 32------------ 33 341. Initialize the temperature sensor by calling the function :cpp:func:`temp_sensor_set_config` and pass to it a :cpp:type:`temp_sensor_config_t` structure. The :cpp:type:`temp_sensor_config_t` structure should contain all the required parameters. See the example below. 35 36.. code-block:: c 37 38 temp_sensor_config_t temp_sensor = { 39 .dac_offset = TSENS_DAC_L2, 40 .clk_div = 6, 41 }; 42 temp_sensor_set_config(temp_sensor); 43 442. Start the temp_sensor by calling :cpp:func:'temp_sensor_start'. The temperature sensor will now measure the temperature. 45 463. To get the current temperature, take the example below as a reference, the value you get is in Celsius. 47 48.. code-block:: c 49 50 float tsens_out; 51 temp_sensor_read_celsius(&tsens_out); 52 534. To stop the temperature sensor, please call :cpp:func:'temp_sensor_stop'. 54 55.. note:: 56 57 If you want dynamic reconfiguration, you need to stop the sensor first (temp_sensor_stop), set the new configuration (temp_sensor_set_config), then start the sensor again (temp_sensor_start). 58 59Application Example 60------------------- 61 62Temperature sensor reading example: :example:`peripherals/temp_sensor`. 63 64API Reference - Normal Temp Sensor 65---------------------------------- 66 67.. include-build-file:: inc/temp_sensor.inc 68