# Interval - Arduino knihovna pro časování pomocí intervalů Koncepce programové konstrukce aplikace pro Arduino spočívá ve dvou hlavních metodách – **setup()** a **loop()**, ve které program neustále běží. Pro pohodlnější práci s obsluhou periodických procesů jsem napsal jednoduchou knihovnu, která tyto úkoly umožňuje realizovat velmi elegantním způsobem. Knihovna **Interval** vytváří časovací objekty a umožňuje jejich ovládání pomocí následujících metod. ## **set** Metoda **set** se používá k nastavení timeoutu a definici začátku časování. ## **expired** Metoda **expired** pak slouží k ověření, zda nastavený interval již vypršel. ## **setOneshot** Metoda **setOneshot** nastaví jednorázový běh časovače. Po jeho vypršení je časovač zastavený. ## **setPeriodic** Metoda **setPeriodic** nastaví opakovaný běh časovače. Po jeho vypršení je časovač automaticky nastavený na zadaný čas. ## **reload** Metoda **reload** způsobí nový start časovače s poslední zadanou časovou konstantou. ## **elapsed** Metoda **elapsed** vrátí čas, který už uplynul od začátku běhu časovače. ## **remains** Metoda **remains** vrátí čas, který ještě zbývá do konce běhu časovače, nebo do startu nového cyklu. Zajímavostí je, že knihovna korektně ošetřuje přetečení vnitřního milisekundového čítače, takže nehrozí nebezpečí špatného časování i při velmi dlouhé době chodu zařízení.