вызывать функцию переодически

crecker
Offline
Зарегистрирован: 15.12.2013

подскажите, если я хочу, чтобы программа   выполняла  определенную функцию каждые 10 секунд, например, какая есть альтернатива к команде

 

Timer1.initialize(8000000); //
 Timer1.attachInterrupt(function); // 

?

step962
Offline
Зарегистрирован: 23.05.2011

Планировщик задач

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

cronjob

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011
Tomasina
Tomasina аватар
Offline
Зарегистрирован: 09.03.2013

Если вариант "из пушки по воробьям" устраивает, то можно использовать 

Alarm.timerRepeat(seconds, function); библиотеки TimeAlarms

 

toc
Offline
Зарегистрирован: 09.02.2013

crecker, 

Пуск - Все программы - Стандартные - Служебные - Запланированные задания

crecker
Offline
Зарегистрирован: 15.12.2013

я вообщето про ардуино и желательно без тяжелой артиллерии ))

step962
Offline
Зарегистрирован: 23.05.2011

А станковый пулемет подойдет?

#include <Queue.h>

char flipflop;

void setup() {
    pinMode(13, OUTPUT);
    Serial.begin(9600);
    Serial.println("Alive");

    Queue myQueue;
// первый запуск функции testFunction через 5 сек, повторять каждые 1 сек
    myQueue.scheduleFunction(testFunction, "Test", 5000, 1000);
// первый запуск функции Blink через 0,5 сек, повторять каждые 0,2 сек
    myQueue.scheduleFunction(Blink, "Blink", 500, 200);
}

void loop() {
    myQueue.run(millis());
    delay(10);
}

int testFunction(unsigned long now) {
    Serial.print("Hello: ");
    Serial.println(now);
}

int Blink(unsigned long now) {
    if(flipflop) digitalWrite(13,HIGH);
    else digitalWrite(13,LOW);
    flipflop=!flipflop;
}