瀏覽代碼

ulp: add note regarding limitation of ulp_set_wakeup_period in deep sleep mode

Mahavir Jain 7 年之前
父節點
當前提交
588ecaae09
共有 3 個文件被更改,包括 5 次插入2 次删除
  1. 3 0
      components/ulp/include/esp32/ulp.h
  2. 1 1
      docs/en/api-guides/ulp-cmake.rst
  3. 1 1
      docs/en/api-guides/ulp.rst

+ 3 - 0
components/ulp/include/esp32/ulp.h

@@ -898,6 +898,9 @@ esp_err_t ulp_run(uint32_t entry_point);
  * i.e. period number 0. ULP program code can use SLEEP instruction to select
  * which of the SENS_ULP_CP_SLEEP_CYCx_REG should be used for subsequent wakeups.
  *
+ * However, please note that SLEEP instruction issued (from ULP program) while the system
+ * is in deep sleep mode does not have effect, and sleep cycle count 0 is used.
+ *
  * @param period_index wakeup period setting number (0 - 4)
  * @param period_us wakeup period, us
  * @note  The ULP FSM requires two clock cycles to wakeup before being able to run the program.

+ 1 - 1
docs/en/api-guides/ulp-cmake.rst

@@ -152,7 +152,7 @@ ULP program flow
 
 ULP coprocessor is started by a timer. The timer is started once ``ulp_run`` is called. The timer counts a number of RTC_SLOW_CLK ticks (by default, produced by an internal 150kHz RC oscillator). The number of ticks is set using ``SENS_ULP_CP_SLEEP_CYCx_REG`` registers (x = 0..4). When starting the ULP for the first time, ``SENS_ULP_CP_SLEEP_CYC0_REG`` will be used to set the number of timer ticks. Later the ULP program can select another ``SENS_ULP_CP_SLEEP_CYCx_REG`` register using ``sleep`` instruction.
 
-The application can set ULP timer period values (SENS_ULP_CP_SLEEP_CYCx_REG, x = 0..4) using ``ulp_wakeup_period_set`` function.
+The application can set ULP timer period values (SENS_ULP_CP_SLEEP_CYCx_REG, x = 0..4) using ``ulp_set_wakeup_period`` function.
 
 .. doxygenfunction:: ulp_set_wakeup_period
 

+ 1 - 1
docs/en/api-guides/ulp.rst

@@ -151,7 +151,7 @@ ULP program flow
 
 ULP coprocessor is started by a timer. The timer is started once ``ulp_run`` is called. The timer counts a number of RTC_SLOW_CLK ticks (by default, produced by an internal 150kHz RC oscillator). The number of ticks is set using ``SENS_ULP_CP_SLEEP_CYCx_REG`` registers (x = 0..4). When starting the ULP for the first time, ``SENS_ULP_CP_SLEEP_CYC0_REG`` will be used to set the number of timer ticks. Later the ULP program can select another ``SENS_ULP_CP_SLEEP_CYCx_REG`` register using ``sleep`` instruction.
 
-The application can set ULP timer period values (SENS_ULP_CP_SLEEP_CYCx_REG, x = 0..4) using ``ulp_wakeup_period_set`` function.
+The application can set ULP timer period values (SENS_ULP_CP_SLEEP_CYCx_REG, x = 0..4) using ``ulp_set_wakeup_period`` function.
 
 .. doxygenfunction:: ulp_set_wakeup_period