unsigned long last_time = 0;
unsigned long lt2 = 0;
unsigned long ltl = 0;
int t = 0;
int s = 0;
int wait = 0;
void setup()
{
pinMode(2, OUTPUT);
pinMode(25, OUTPUT);
}
void v(int x, int c,int y)
{
if (wait == 0)
{
if ((s % 2 == 0))
{
digitalWrite(25, HIGH);
}
else
{
digitalWrite(25, LOW);
}
s++;
if (s >= x*2)
{
wait = 1;
s=0;
}
}
else
{
wait++;
if (wait > y)
{
wait = 0;
if (c == 1)t = 0;
else
{
t = 1;
}
}
}
}
void loop()
{
//s1
if (millis() - ltl >= 500)
{
digitalWrite(2, !digitalRead(2));
ltl = millis();
}
if (t == 0)
{
if (millis() - last_time >= 1000)
{
digitalWrite(2, digitalRead(2));
last_time = millis();
lt2=last_time;
v(3, 0,2);
}
}
else
{ //s2
if (millis() - lt2 >= 500)
{
lt2 = millis();
v(6, 1,4);
}
}
}