diff --git a/docs/en/api/axp192_m5stickc.md b/docs/en/api/axp192_m5stickc.md
index 46c465c6..f40b4193 100644
--- a/docs/en/api/axp192_m5stickc.md
+++ b/docs/en/api/axp192_m5stickc.md
@@ -314,32 +314,28 @@ void loop() {
**Syntax:**
-uint16_t GetTempData(void);
+uint16_t GetIinData(void);
-**Description: Get battery capacity.**
+**Description: ACIN current.**
**Example:**
```arduino
#include
-int temp;
-
void setup() {
M5.begin(); //By default, "M5.begin()" will initialize AXP192 chip
M5.Lcd.fillScreen(BLACK);
}
void loop() {
- temp = M5.Axp.GetTempData()*0.1-144.7;
M5.Lcd.setCursor(0, 0, 1);
- M5.Lcd.printf("tempurature:%d\r\n", temp);
- delay(500);
+ M5.Lcd.printf("Iin:%.3fmA\r\n",M5.Axp.GetIinData() * 0.625);
}
```
-## GetIinData()
+## GetIdischargeData()
**Syntax:**
diff --git a/docs/en/uiflow/advanced.md b/docs/en/uiflow/advanced.md
index fa613736..cbba3ab0 100644
--- a/docs/en/uiflow/advanced.md
+++ b/docs/en/uiflow/advanced.md
@@ -476,4 +476,21 @@ Scanning I2C devices
>Read data from I2C
->
\ No newline at end of file
+>
+
+
+# Execute
+__________________________
+
+#### Function Description
+
+>Execution of external programs
+
+>
+
+
+#### Instructions
+
+>import Library
+
+>
diff --git a/docs/image/Advanced module/Excute.png b/docs/image/Advanced module/Execute.png
similarity index 100%
rename from docs/image/Advanced module/Excute.png
rename to docs/image/Advanced module/Execute.png
diff --git a/docs/image/Advanced module/Execute_user.gif b/docs/image/Advanced module/Execute_user.gif
new file mode 100644
index 00000000..717015f5
Binary files /dev/null and b/docs/image/Advanced module/Execute_user.gif differ
diff --git a/docs/zh_CN/api/axp192_m5stickc.md b/docs/zh_CN/api/axp192_m5stickc.md
index 37769779..54cc086d 100644
--- a/docs/zh_CN/api/axp192_m5stickc.md
+++ b/docs/zh_CN/api/axp192_m5stickc.md
@@ -20,6 +20,31 @@ void setup() {
void loop() {}
```
+## GetWarningLeve()
+
+**函数原型:**
+
+uint8_t GetWarningLeve(void);
+
+**功能: 获取当前报警等级.**
+
+**例程:**
+
+```arduino
+#include
+int level;
+
+void setup() {
+ M5.begin();
+}
+void loop() {
+ level = M5.Axp.GetWarningLeve();
+ M5.Lcd.setCursor(0, 0);
+ M5.Lcd.print(level);
+}
+```
+
+
## ScreenBreath()
**函数原型:**
@@ -30,7 +55,7 @@ void loop() {}
| 参数 | 描述 |
| --- | --- |
-| brightness | TFT 的背光 ( 数值范围:7-15 ) |
+| brightness | TFT 的背光 ( 数值范围:7-12 ) |
**例程:**
```arduino
@@ -76,6 +101,101 @@ void loop() {
}
```
+## LightSleep()
+
+**函数原型:**
+
+void LightSleep(uint64_t time_in_us = 0)
+
+**功能: 控制ESP32进入轻度睡眠模式,开机键唤醒.**
+
+| 参数 | 描述 |
+| --- | --- |
+| time_in_us| 休眠时间|
+
+**例程:**
+
+```arduino
+#include
+
+int count = 0;
+void setup() {
+ M5.begin();
+ M5.Lcd.fillScreen(WHITE);
+ pinMode(M5_BUTTON_HOME,INPUT_PULLUP);
+}
+void loop() {
+ if(digitalRead(M5_BUTTON_HOME) == LOW){
+ while(digitalRead(M5_BUTTON_HOME) == LOW);
+ M5.Axp.LightSleep(SLEEP_SEC(5)); //SLEEP_SEC(us) (((uint64_t)us) * 1000000L)
+ }
+ count++;
+ M5.Lcd.setCursor(60, 30);
+ M5.Lcd.setTextColor(BLACK, WHITE);
+ M5.Lcd.print(count);
+}
+```
+
+## DeepSleep()
+
+**函数原型:**
+
+void DeepSleep(uint64_t time_in_us = 0)
+
+**功能: 控制外设进入休眠模式,到达时间自动唤醒.**
+
+**例程:**
+
+```arduino
+#include
+
+void setup() {
+ M5.begin();
+ M5.Lcd.setRotation(3);
+ M5.Lcd.fillScreen(WHITE);
+ M5.Lcd.setTextColor(BLACK, WHITE);
+ pinMode(M5_BUTTON_HOME,INPUT_PULLUP);
+ M5.Lcd.setCursor(60, 30);
+ M5.Lcd.print("SLEEP");
+}
+
+void loop() {
+ if(digitalRead(M5_BUTTON_HOME) == LOW){
+ while(digitalRead(M5_BUTTON_HOME) == LOW);
+ M5.Axp.DeepSleep(SLEEP_SEC(5));
+ }
+}
+```
+
+## SetSleep()
+
+**函数原型:**
+
+void SetSleep(void);
+
+**功能: 控制外设进入休眠模式,按下电源键唤醒.**
+
+**例程:**
+
+```arduino
+#include
+
+void setup() {
+ M5.begin();
+ M5.Lcd.fillScreen(WHITE);
+ pinMode(M5_BUTTON_HOME,INPUT_PULLUP);
+ M5.Lcd.setCursor(60, 30);
+ M5.Lcd.print("SLEEP");
+}
+void loop() {
+ if(digitalRead(M5_BUTTON_HOME) == LOW){
+ while(digitalRead(M5_BUTTON_HOME) == LOW);
+ M5.Axp.SetSleep();
+ }
+}
+```
+
+
## GetIchargeData()
**函数原型:**
@@ -101,4 +221,173 @@ void loop() {
M5.Lcd.printf("icharge:%dmA\r\n", charge);
delay(500);
}
+```
+
+
+## GetPowerbatData()
+
+**函数原型:**
+
+uint32_t GetPowerbatData(void);
+
+**功能: 当前电源功率.**
+
+**例程:**
+
+```arduino
+#include
+
+int bat;
+
+void setup() {
+ M5.begin(); //By default, "M5.begin()" will initialize AXP192 chip
+ M5.Lcd.fillScreen(BLACK);
+ M5.Axp.ScreenBreath(7);
+}
+
+void loop() {
+ bat = M5.Axp.GetPowerbatData()*1.1*0.5/1000;
+ M5.Lcd.setCursor(0, 0, 1);
+ M5.Lcd.printf("battery power:%dmW\r\n", bat);
+ delay(500);
+}
+```
+
+## GetVapsData()
+
+**函数原型:**
+
+uint16_t GetVapsData(void);
+
+**功能: 获取电池容量.**
+
+**例程:**
+
+```arduino
+#include
+
+int Vaps;
+
+void setup() {
+ M5.begin(); //By default, "M5.begin()" will initialize AXP192 chip
+ M5.Lcd.fillScreen(BLACK);
+}
+
+void loop() {
+ Vaps = M5.Axp.GetVapsData();
+ M5.Lcd.setCursor(0, 0, 1);
+ M5.Lcd.printf("battery capacity :%dmW\r\n", Vaps);
+ delay(500);
+}
+```
+
+## GetTempData()
+
+**函数原型:**
+
+uint16_t GetTempData(void);
+
+**功能: 获取芯片温度.**
+
+**例程:**
+
+```arduino
+#include
+
+int temp;
+
+void setup() {
+ M5.begin(); //By default, "M5.begin()" will initialize AXP192 chip
+ M5.Lcd.fillScreen(BLACK);
+}
+
+void loop() {
+ temp = M5.Axp.GetTempData()*0.1-144.7;
+ M5.Lcd.setCursor(0, 0, 1);
+ M5.Lcd.printf("tempurature:%d\r\n", temp);
+ delay(500);
+}
+```
+
+
+## GetIdischargeData()
+
+**函数原型:**
+
+uint16_t GetIdischargeData(void);
+
+**功能: 获取放电电流.**
+
+**例程:**
+
+```arduino
+#include
+
+int disCharge;
+
+void setup() {
+ M5.begin(); //By default, "M5.begin()" will initialize AXP192 chip
+ M5.Lcd.fillScreen(BLACK);
+}
+
+void loop() {
+ disCharge = M5.Axp.GetIdischargeData() / 2;
+ M5.Lcd.setCursor(0, 0, 1);
+ M5.Lcd.printf("disCharge:%dma\r\n", disCharge);
+ delay(500);
+}
+```
+
+
+## GetIinData()
+
+**函数原型:**
+
+uint16_t GetIinData(void);
+
+**功能: 获取输入电流.**
+
+**例程:**
+
+```arduino
+#include
+
+void setup() {
+ M5.begin(); //By default, "M5.begin()" will initialize AXP192 chip
+ M5.Lcd.fillScreen(BLACK);
+}
+
+void loop() {
+ M5.Lcd.setCursor(0, 0, 1);
+ M5.Lcd.printf("Iin:%.3fmA\r\n",M5.Axp.GetIinData() * 0.625);
+}
+```
+
+
+## GetIusbinData()
+
+**函数原型:**
+
+uint16_t GetIusbinData(void);
+
+**功能:获取USB电流.**
+
+**例程:**
+
+```arduino
+#include
+
+int Iusb;
+
+void setup() {
+ M5.begin(); //By default, "M5.begin()" will initialize AXP192 chip
+ M5.Lcd.fillScreen(BLACK);
+}
+
+void loop() {
+ Iusb = M5.Axp.GetIdischargeData() * 0.375;
+ M5.Lcd.setCursor(0, 0, 1);
+ M5.Lcd.printf("Iusbin:%da\r\n", Iusb);
+ delay(500);
+}
```
\ No newline at end of file
diff --git a/docs/zh_CN/uiflow/advanced.md b/docs/zh_CN/uiflow/advanced.md
index dd3b48ab..0538c354 100644
--- a/docs/zh_CN/uiflow/advanced.md
+++ b/docs/zh_CN/uiflow/advanced.md
@@ -515,4 +515,21 @@ __________________________
>从I2C读取数据
->
\ No newline at end of file
+>
+
+
+# Execute
+__________________________
+
+#### 功能说明
+
+>执行外部程序
+
+>
+
+
+#### 使用方法
+
+>导入库
+
+>