#include "led.h" #define LED 3 uint32_t _led_cas; // promenna s aktualni hodnotou casove znacky (32b) uint16_t _led_perioda; // promenna s aktualni hodnotou periody (16b) void LED_nastav(uint16_t x) { pinMode(LED, OUTPUT); // nastaveni pinu 2 jako vystup _led_perioda = x; // ulozeni periody _led_cas = millis(); // ulozeni aktualniho casu jako casove znacky } void LED_delej() { if(millis() - _led_cas >= _led_perioda) { // je-li doba od posledni akce >= perioda digitalWrite(LED, !digitalRead(LED)); // zmen hodnotu vystupu _led_cas += _led_perioda; // posun casovou znacku o periodu } }