mirror of
https://github.com/espressif/esp-idf.git
synced 2026-10-02 03:00:34 +03:00
doc: remove outdated diagrams for DAC, I2C, and I2S in documentation
This commit is contained in:
@@ -22,27 +22,6 @@ The DAC peripheral supports outputting analog signal in the following ways:
|
||||
|
||||
For other analog output options, see :doc:`Sigma-Delta Modulation <sdm>` and :doc:`LED Control <ledc>`. Both modules produce high-frequency PWM/PDM output, which can be hardware low-pass filtered in order to generate a lower frequency analog output.
|
||||
|
||||
DAC File Structure
|
||||
------------------
|
||||
|
||||
.. figure:: ../../../_static/diagrams/dac/dac_file_structure.png
|
||||
:align: center
|
||||
:alt: DAC file structure
|
||||
|
||||
DAC File Structure
|
||||
|
||||
|
||||
**Public headers that need to be included in the DAC application are listed as follows:**
|
||||
|
||||
- ``dac.h``: The top header file of the legacy DAC driver, which should be only included in the apps which use the legacy driver API.
|
||||
- ``dac_oneshot.h``: The top header file of the new DAC driver, which should be included in the apps which use the new driver API with one-shot mode.
|
||||
- ``dac_cosine.h``: The top header file of the new DAC driver, which should be included in the apps which use the new driver API with cosine mode.
|
||||
- ``dac_continuous.h``: The top header file of the new DAC driver, which should be included in the apps which use the new driver API with continuous mode.
|
||||
|
||||
.. note::
|
||||
|
||||
The legacy driver cannot coexist with the new driver. Include ``dac.h`` to use the legacy driver or ``dac_oneshot.h``, ``dac_cosine.h``, and ``dac_continuous.h`` to use the new driver. The legacy driver might be removed in the future.
|
||||
|
||||
Functional Overview
|
||||
-------------------
|
||||
|
||||
|
||||
@@ -47,38 +47,14 @@ I2C Clock Configuration
|
||||
:SOC_I2C_SUPPORT_APB: - :cpp:enumerator:`i2c_clock_source_t::I2C_CLK_SRC_APB`: APB clock as I2C clock source.
|
||||
:SOC_I2C_SUPPORT_REF_TICK: - :cpp:enumerator:`i2c_clock_source_t::I2C_CLK_SRC_REF_TICK`: 1 MHZ clock.
|
||||
|
||||
I2C File Structure
|
||||
------------------
|
||||
|
||||
.. figure:: ../../../_static/diagrams/i2c/i2c_code_structure.png
|
||||
:align: center
|
||||
:alt: I2C file structure
|
||||
|
||||
I2C file structure
|
||||
|
||||
**Public headers that need to be included in the I2C application**
|
||||
|
||||
- ``i2c.h``: The header file of legacy I2C APIs (for apps using legacy driver).
|
||||
- ``i2c_master.h``: The header file that provides standard communication mode specific APIs (for apps using new driver with master mode).
|
||||
- ``i2c_slave.h``: The header file that provides standard communication mode specific APIs (for apps using new driver with slave mode).
|
||||
|
||||
.. note::
|
||||
|
||||
The legacy driver can't coexist with the new driver. Include ``i2c.h`` to use the legacy driver or the other two headers to use the new driver. Please keep in mind that the legacy driver is now deprecated and will be removed in future.
|
||||
|
||||
**Public headers that have been included in the headers above**
|
||||
|
||||
- ``i2c_types_legacy.h``: The legacy public types that are only used in the legacy driver.
|
||||
- ``i2c_types.h``: The header file that provides public types.
|
||||
|
||||
Functional Overview
|
||||
-------------------
|
||||
|
||||
The I2C driver offers following services:
|
||||
|
||||
- `Resource Allocation <#resource-allocation>`__ - covers how to allocate I2C bus with properly set of configurations. It also covers how to recycle the resources when they finished working.
|
||||
- `I2C Master Controller <#i2c_master_controller>`__ - covers behavior of I2C master controller. Introduce data transmit, data receive, and data transmit and receive.
|
||||
- `I2C Slave Controller <#i2c_slave_controller>`__ - covers behavior of I2C slave controller. Involve data transmit and data receive.
|
||||
- `I2C Master Controller <#i2c-master-controller>`__ - covers behavior of I2C master controller. Introduce data transmit, data receive, and data transmit and receive.
|
||||
- `I2C Slave Controller <#i2c-slave-controller>`__ - covers behavior of I2C slave controller. Involve data transmit and data receive.
|
||||
- `Power Management <#power-management>`__ - describes how different source clock will affect power consumption.
|
||||
- `IRAM Safe <#iram-safe>`__ - describes tips on how to make the I2C interrupt work better along with a disabled cache.
|
||||
- `Thread Safety <#thread-safety>`__ - lists which APIs are guaranteed to be thread safe by the driver.
|
||||
|
||||
@@ -47,34 +47,6 @@ Each I2S controller has the following features that can be configured by the I2S
|
||||
|
||||
Each controller has separate RX and TX channels. That means they are able to work under different clocks and slot configurations with separate GPIO pins. Note that although the internal MCLKs of TX channel and RX channel are separate on a controller, the output MCLK signal can only be attached to one channel. If independent MCLK output is required for each channel, they must be allocated on different I2S controllers.
|
||||
|
||||
I2S File Structure
|
||||
------------------
|
||||
|
||||
.. figure:: ../../../_static/diagrams/i2s/i2s_file_structure.png
|
||||
:align: center
|
||||
:alt: I2S file structure
|
||||
|
||||
I2S File Structure
|
||||
|
||||
**Public headers that need to be included in the I2S application are as follows:**
|
||||
|
||||
.. list::
|
||||
|
||||
- ``i2s.h``: The header file that provides legacy I2S APIs (for apps using legacy driver).
|
||||
- ``i2s_std.h``: The header file that provides standard communication mode specific APIs (for apps using new driver with standard mode).
|
||||
:SOC_I2S_SUPPORTS_PDM: - ``i2s_pdm.h``: The header file that provides PDM communication mode specific APIs (for apps using new driver with PDM mode).
|
||||
:SOC_I2S_SUPPORTS_TDM: - ``i2s_tdm.h``: The header file that provides TDM communication mode specific APIs (for apps using new driver with TDM mode).
|
||||
|
||||
.. note::
|
||||
|
||||
The legacy driver cannot coexist with the new driver. Include ``i2s.h`` to use the legacy driver, or include the other three headers to use the new driver. The legacy driver might be removed in future.
|
||||
|
||||
**Public headers that have been included in the headers above are as follows:**
|
||||
|
||||
- ``i2s_types_legacy.h``: The header file that provides legacy public types that are only used in the legacy driver.
|
||||
- ``i2s_types.h``: The header file that provides public types.
|
||||
- ``i2s_common.h``: The header file that provides common APIs for all communication modes.
|
||||
|
||||
I2S Clock
|
||||
---------
|
||||
|
||||
|
||||
@@ -481,12 +481,6 @@ LCD
|
||||
|
||||
Meanwhile, the old driver's APIs in ``driver/i2s.h`` are still supported for backward compatibility. But there will be warnings if users keep using the old APIs in their projects, these warnings can be suppressed by the Kconfig option ``CONFIG_I2S_SUPPRESS_DEPRECATE_WARN``.
|
||||
|
||||
Here is the general overview of the current I2S files:
|
||||
|
||||
.. figure:: ../../../../_static/diagrams/i2s/i2s_file_structure.png
|
||||
:align: center
|
||||
:alt: I2S File Structure
|
||||
|
||||
Breaking changes in Concepts
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
Reference in New Issue
Block a user