Спящий режим

Тема в разделе "Arduino & Shields", создана пользователем Nikita, 5 окт 2013.

  1. Nikita

    Nikita Гик

    В нете нашёл программу спящего режима. Не понимаю принцип её работы. Кто может помочь?

    Код (Text):
    /*
    5 режимов энергосбережения:
    SLEEP_MODE_IDLE
    SLEEP_MODE_ADC
    SLEEP_MODE_PWR_SAVE
    SLEEP_MODE_STANDBY
    SLEEP_MODE_PWR_DOWN
    */
    #include <avr/sleep.h>
    extern volatile unsigned long timer0_millis;
    void setup()
    {
        pinMode(13, OUTPUT);
        interrupts();
    }
    void loop()
    {
        while(timer0_millis < 1000) {
            set_sleep_mode(SLEEP_MODE_IDLE); // выбор режима
            sleep_mode(); // уходим в спячку
        }
        timer0_millis = 0; // сброс счётчика
        bitSet(PINB, 5);  // переключение светодиода
    }
     
  2. Nikita

    Nikita Гик

    В нете нашёл программу спящего режима. Не понимаю принцип её работы. Кто может помочь?

    Код (Text):
    /*
    5 режимов энергосбережения:
    SLEEP_MODE_IDLE
    SLEEP_MODE_ADC
    SLEEP_MODE_PWR_SAVE
    SLEEP_MODE_STANDBY
    SLEEP_MODE_PWR_DOWN
    */
    #include <avr/sleep.h>
    extern volatile unsigned long timer0_millis;
    void setup()
    {
        pinMode(13, OUTPUT);
        interrupts();
    }
    void loop()
    {
        while(timer0_millis < 1000) {
            set_sleep_mode(SLEEP_MODE_IDLE); // выбор режима
            sleep_mode(); // уходим в спячку
        }
        timer0_millis = 0; // сброс счётчика
        bitSet(PINB, 5);  // переключение светодиода
    }
     
  3. Unixon

    Unixon Оракул Модератор

    Megakoteyka нравится это.