Пустая функция-зачем

MaBo
Offline
Зарегистрирован: 09.01.2016

Добрый день!

Объясните новичку. Зачем нужна пустая функция. Вот пример из библиотеки LowPower


/ **** INCLUDES *****
#include "LowPower.h"

// Use pin 2 as wake up pin
const int wakeUpPin = 2;

void wakeUp()
{
    
}

void setup()
{
    // Configure wake up pin as input.
    // This will consumes few uA of current.
    pinMode(wakeUpPin, INPUT);   
}

void loop() 
{
    // Allow wake up pin to trigger interrupt on low.
    attachInterrupt(0, wakeUp, LOW);
    
    // Enter power down state with ADC and BOD module disabled.
    // Wake up when wake up pin is low.
    LowPower.powerDown(SLEEP_FOREVER, ADC_OFF, BOD_OFF); 
    
    // Disable external pin interrupt on wake up pin.
    detachInterrupt(0); 
    
    // Do something here
    // Example: Read sensor, data logging, data transmission.
}

Зачем в этом коде void wakeUp ?

vde69
Offline
Зарегистрирован: 10.01.2016

обычно такие функции оставляют для возможности расширения...

но в твоем случае она нигде не вызывается, вместо нее используется переменная с похожим названием.

да и вообще "void" это скорее процедура а не функция :)

Andy
Andy аватар
Offline
Зарегистрирован: 01.01.2016

void wakeUp() это обработчик прерывания, которое выводит контроллер из сна. Обработчик ничего не делает, сам факт прерывания пробуждает контроллер.