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 +__________________________ + +#### 功能说明 + +>执行外部程序 + +> + + +#### 使用方法 + +>导入库 + +>