Skip to content

Commit

Permalink
Merge branch 'docs/h2_programming_guide_cleanup' into 'master'
Browse files Browse the repository at this point in the history
docs(esp32h2): updated misc docs with esp32h2 content

Closes IDF-6677 and IDF-6688

See merge request espressif/esp-idf!27111
  • Loading branch information
ESP-Marius committed Nov 15, 2023
2 parents 677faec + 730f2af commit 5b189fe
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 46 deletions.
17 changes: 0 additions & 17 deletions docs/docs_not_updated/esp32h2.txt
Original file line number Diff line number Diff line change
@@ -1,19 +1,2 @@
api-guides/RF_calibration
api-guides/coexist
api-guides/cplusplus
api-guides/dfu
api-guides/index
api-reference/peripherals/spi_features
api-reference/peripherals/sdio_slave
api-reference/peripherals/dedic_gpio
api-reference/peripherals/sd_pullup_requirements
api-reference/peripherals/index
api-reference/peripherals/sdmmc_host
api-reference/network/index
api-reference/system/sleep_modes
api-reference/system/power_management
api-reference/system/inc/power_management_esp32
api-reference/system/inc/power_management_esp32s2_and_later
api-reference/protocols/esp_serial_slave_link
api-reference/protocols/esp_sdio_slave_protocol
api-reference/protocols/index
6 changes: 3 additions & 3 deletions docs/en/api-reference/peripherals/dedic_gpio.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Create/Destroy GPIO Bundle
A GPIO bundle is a group of GPIOs, which can be manipulated at the same time in one CPU cycle. The maximal number of GPIOs that a bundle can contain is limited by each CPU. What's more, the GPIO bundle has a strong relevance to the CPU which it derives from. **Any operations on the GPIO bundle should be put inside a task which is running on the same CPU core to the GPIO bundle belongs to.** Likewise, only those ISRs who are installed on the same CPU core are allowed to do operations on that GPIO bundle.

.. note::

Dedicated GPIO is more of a CPU peripheral, so it has a strong relationship with CPU core. It's highly recommended to install and operate GPIO bundle in a pin-to-core task. For example, if GPIOA is connected to CPU0, and the dedicated GPIO instruction is issued from CPU1, then it's impossible to control GPIOA.

To install a GPIO bundle, one needs to call :cpp:func:`dedic_gpio_new_bundle` to allocate the software resources and connect the dedicated channels to user selected GPIOs. Configurations for a GPIO bundle are covered in :cpp:type:`dedic_gpio_bundle_config_t` structure:
Expand Down Expand Up @@ -98,7 +98,7 @@ For advanced users, they can always manipulate the GPIOs by writing assembly cod
- Clear bits of GPIO: ``clr_bit_gpio_out imm[7:0]``
- Note: Immediate value width depends on the number of dedicated GPIO channels

.. only:: esp32c2 or esp32c3 or esp32c6
.. only:: esp32c2 or esp32c3 or esp32c6 or esp32h2

- Set bits of GPIO: ``csrrsi rd, csr, imm[4:0]``
- Clear bits of GPIO: ``csrrci rd, csr, imm[4:0]``
Expand All @@ -112,7 +112,7 @@ For advanced users, they can always manipulate the GPIOs by writing assembly cod

For details of supported dedicated GPIO instructions, please refer to **{IDF_TARGET_NAME} Technical Reference Manual** > **Processor Instruction Extensions (PIE) (to be added later)** [`PDF <{IDF_TARGET_TRM_EN_URL}#pie>`__].

.. only:: esp32c2 or esp32c3 or esp32c6
.. only:: esp32c2 or esp32c3 or esp32c6 or esp32h2

Code examples for manipulating dedicated GPIOs from assembly are provided in the :example:`peripherals/dedicated_gpio` directory of ESP-IDF examples. These examples show how to emulate a UART, an I2C and an SPI bus in assembly thanks to dedicated GPIOs.

Expand Down
18 changes: 6 additions & 12 deletions docs/en/api-reference/system/sleep_modes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -431,20 +431,14 @@ Checking Sleep Wakeup Cause
Application Example
-------------------

- :example:`protocols/sntp`: the implementation of basic functionality of Deep-sleep, where ESP module is periodically waken up to retrieve time from NTP server.
- :example:`wifi/power_save`: the usage of Wi-Fi Modem-sleep mode and automatic Light-sleep feature to maintain Wi-Fi connections.
.. list::

.. only:: SOC_BT_SUPPORTED

- :example:`bluetooth/nimble/power_save`: the usage of Bluetooth Modem-sleep mode and automatic Light-sleep feature to maintain Bluetooth connections.

.. only:: SOC_ULP_SUPPORTED

- :example:`system/deep_sleep`: the usage of various Deep-sleep wakeup triggers and ULP coprocessor programming.

.. only:: esp32c3 or esp32c2
- :example:`protocols/sntp`: the implementation of basic functionality of Deep-sleep, where ESP module is periodically waken up to retrieve time from NTP server.
- :example:`wifi/power_save`: the usage of Wi-Fi Modem-sleep mode and automatic Light-sleep feature to maintain Wi-Fi connections.
:SOC_BT_SUPPORTED: - :example:`bluetooth/nimble/power_save`: the usage of Bluetooth Modem-sleep mode and automatic Light-sleep feature to maintain Bluetooth connections.
:SOC_ULP_SUPPORTED: - :example:`system/deep_sleep`: the usage of various Deep-sleep wakeup triggers and ULP coprocessor programming.
:not SOC_ULP_SUPPORTED: - :example:`system/deep_sleep`: the usage of Deep-sleep wakeup triggered by timer.

- :example:`system/deep_sleep`: the usage of Deep-sleep wakeup triggered by timer.

API Reference
-------------
Expand Down
4 changes: 2 additions & 2 deletions docs/zh_CN/api-reference/peripherals/dedic_gpio.rst
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ GPIO 捆绑包操作
- 清除 GPIO 位:``clr_bit_gpio_out imm[7:0]``
- 注意:立即数宽度取决于专用 GPIO 通道的数量

.. only:: esp32c2 or esp32c3 or esp32c6
.. only:: esp32c2 or esp32c3 or esp32c6 or esp32h2

- 设置 GPIO 位:``csrrsi rd, csr, imm[4:0]``
- 清除 GPIO 位:``csrrci rd, csr, imm[4:0]``
Expand All @@ -112,7 +112,7 @@ GPIO 捆绑包操作

有关支持的专用 GPIO 指令的详细信息,请参考 **{IDF_TARGET_NAME} 技术参考手册** > **处理器指令拓展 (PIE)(稍后发布)** [`PDF <{IDF_TARGET_TRM_CN_URL}#pie>`__].

.. only:: esp32c2 or esp32c3 or esp32c6
.. only:: esp32c2 or esp32c3 or esp32c6 or esp32h2

通过汇编操作专用 GPIO 的示例代码存放在 ESP-IDF 示例项目的 :example:`peripherals/dedicated_gpio` 目录下。示例演示了如何通过汇编操作专用 GPIO 来模拟 UART、I2C 和 SPI 总线。

Expand Down
18 changes: 6 additions & 12 deletions docs/zh_CN/api-reference/system/sleep_modes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -431,20 +431,14 @@ UART 输出处理
应用程序示例
-------------------

- :example:`protocols/sntp`:如何实现 Deep-sleep 模式的基本功能,周期性唤醒 ESP 模块,以从 NTP 服务器获取时间。
- :example:`wifi/power_save`:如何通过 Wi-Fi Modem-sleep 模式和自动 Light-sleep 模式保持 Wi-Fi 连接。
.. list::

.. only:: SOC_BT_SUPPORTED

- :example:`bluetooth/nimble/power_save`:如何通过 Bluetooth Modem-sleep 模式和自动 Light-sleep 模式保持 Bluetooth 连接。

.. only:: SOC_ULP_SUPPORTED

- :example:`system/deep_sleep`:如何使用 Deep-sleep 唤醒触发器和 ULP 协处理器编程。

.. only:: esp32c3 or esp32c2
- :example:`protocols/sntp`:如何实现 Deep-sleep 模式的基本功能,周期性唤醒 ESP 模块,以从 NTP 服务器获取时间。
- :example:`wifi/power_save`:如何通过 Wi-Fi Modem-sleep 模式和自动 Light-sleep 模式保持 Wi-Fi 连接。
:SOC_BT_SUPPORTED: - :example:`bluetooth/nimble/power_save`:如何通过 Bluetooth Modem-sleep 模式和自动 Light-sleep 模式保持 Bluetooth 连接。
:SOC_ULP_SUPPORTED: - :example:`system/deep_sleep`:如何使用 Deep-sleep 唤醒触发器和 ULP 协处理器编程。
:not SOC_ULP_SUPPORTED: - :example:`system/deep_sleep`:如何通过定时器触发 Deep-sleep 唤醒。

- :example:`system/deep_sleep`:如何通过定时器触发 Deep-sleep 唤醒。

API 参考
-------------
Expand Down

0 comments on commit 5b189fe

Please sign in to comment.