На главную страницу | Новости | FAQ | Ссылки | Для детей | Контакты
Дан базовый пример кода для перехода Arduino в энергосберегающий режим
Включение функции энергосбережения позволяет увеличить срок работы устройства от автономного источника питания (например батарейки) в 2-3 раза (для МК Atmega-328P-PU)
Общая форма:
void loop()
{
noInterrupts();
// critical, time-sensitive code here
interrupts();
// other code here
}
Пример кода:
void wakeup()
{
Serial.print("Wake");
detachInterrupt(0);
digitalWrite(13, HIGH);
}
void EnterSleep()
{
attachInterrupt(0, wakeUp, LOW); //Если на 0-вом прерываниии - ноль, то просыпаемся.
sleep_enable(); //Разрешаем спящий режим
sleep_mode(); //Спим (Прерывания продолжают работать.) Программа останавливается.
sleep_disable(); //Запрещаем спящий режим
}
void setup()
{
set_sleep_mode(SLEEP_MODE_PWR_DOWN); //Определяем режим сна
}
читать подробнее здесь:
http://student-proger.ru/2013/10/energopotreblenie-arduino/
Now 21.11.24 16:15:30, Your IP: 3.15.7.212; arduino.zl3p.com/basic/power
ePN