• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

ESP_fpm_LighSleep

nikolz

Well-known member
Пример кода для работы ESP8266 c просыпанием от кнопки.
Кнопку подключаем к GPIO12
В режиме ожидания ток потребления ESP8266 составляет от 0.3 до 0.5 ма.
Просыпаться будет при нажатии и отпускании кнопки.
Пример на CИ
В функцию user_init()
пишем следующий код
Код:
    PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDI_U,3); GPIO_DIS_OUTPUT(12);
    if (wifi_fpm_get_sleep_type ()!= LIGHT_SLEEP_T) wifi_fpm_set_sleep_type(LIGHT_SLEEP_T);  
    gpio_pin_wakeup_enable(12,GPIO_PIN_INTR_LOLEVEL);
    wifi_fpm_set_wakeup_cb(fpm_LighSleep);
    wifi_set_opmode_current(NULL_MODE);
    ets_wdt_disable();
     PIN_FUNC_SELECT(PERIPHS_IO_MUX_U0TXD_U,3);    gpio_output_set(BIT1, 0, BIT1, 0);
     wifi_fpm_open();
    fpm_LighSleep();
и добавляем в прогу функцию:
Код:
uint8 LTL=4;
void fpm_LighSleep(void){
    gpio_pin_wakeup_enable(12,LTL);  if (LTL==4)LTL=5;
    wifi_fpm_do_sleep(FPM_SLEEP_MAX_TIME);
}
при нажатии и отпускании кнопки получаем такую картинку потребляемого тока ESP-12
upload_2018-1-9_8-27-0.png
 
Последнее редактирование:
Сверху Снизу