class Blikacka{
public:
Blikacka(int pin); //kosntruktor
void blikej(int interval);
void neblikej();
private:
int pin;
bool stav = false;
long posledniZmena;
};
class BlikackaChodec{
public:
BlikackaChodec(int pin); //kosntruktor
void blikejCh(int interval);
void neblikejCh();
private:
int pin;
bool stav = false;
long posledniZmena;
};
BlikackaChodec::BlikackaChodec(int pin){
if(pin<0 || pin>13) pin=13;
this->pin=pin;
pinMode(pin, OUTPUT); //nepotrebuji inicialiyovat v setupu
}
void BlikackaChodec::blikejCh(int interval){
if (interval <=0) interval=500;
if ((millis()-posledniZmena)>interval){
stav=!stav;
posledniZmena=millis();
}
digitalWrite(pin, HIGH);
}
void BlikackaChodec::neblikejCh() {
digitalWrite(pin, LOW);
}
BlikackaChodec A(6);//zelena
BlikackaChodec B(7);//oranzova
Blikacka::Blikacka(int pin){
if(pin<0 || pin>13) pin=13;
this->pin=pin;
pinMode(pin, OUTPUT); //nepotrebuji inicialiyovat v setupu
}
void Blikacka::blikej(int interval){
if (interval <=0) interval=500;
if ((millis()-posledniZmena)>interval){
stav=!stav;
posledniZmena=millis();
}
digitalWrite(pin, HIGH);
}
void Blikacka::neblikej() {
digitalWrite(pin, LOW);
}
Blikacka X(2);//zelena
Blikacka Y(3);//oranzova
Blikacka Z(4);//Cervena
void setup(){
}
void loop(){
bool stavik = true;
if(stavik == true){
B.blikejCh(1);
X.blikej(1);
delay(55000);
Y.blikej(1); //zelena
delay(5000);
X.neblikej();
Y.neblikej();
Z.blikej(1);
delay(5000);
Z.neblikej();
B.neblikejCh();
stavik = false;
}
if(stavik == false){
Z.blikej(1);
A.blikejCh(1);
delay(15000);
A.neblikejCh();
B.blikejCh(1);
delay(15000);
Y.blikej(1);
delay(5000);
Y.neblikej();
Z.neblikej();
stavik = true;
}
}