You are on page 1of 2

Lucrare practică nr.

3
Tema: Semaforul la intersecție

pinMode(j2,OUTPUT); }
pinMode(z2, OUTPUT); else
digitalWrite(z2, state); {
pinMode (kp2,OUTPUT); switch(state)
pinMode(zp2, OUTPUT); {
pinMode(btn, INPUT); case 1:
digitalWrite(zp2, state); if(millis()-time>j)
} {
time=millis();
void loop() //выводит количество миллисекунд с момента
{ начала выполнения программы
st = digitalRead(btn); digitalWrite(k1, 1);
if (st == 1) digitalWrite(z2, 1);
{ digitalWrite(zp2,1);
for (int i=0; i<10; i++) digitalWrite(kp1,1);
{ digitalWrite(j1,0);
digitalWrite(k1, 0); digitalWrite(j2,0);
digitalWrite(k2, 0); state=2;
digitalWrite(z1, 0); }
digitalWrite(z2, 0); break;
digitalWrite(zp2, 0); case 2:
digitalWrite(zp1, 0); if(millis()-time>1000)
digitalWrite(kp1, 0); {
digitalWrite(kp2, 0); time=millis();
digitalWrite(j2, 1); digitalWrite(z2,0);
digitalWrite(j1, 1); digitalWrite(zp2,0);
delay(1000); state=3;
digitalWrite(j2, 0); }
digitalWrite(j1, 0); break;
delay(1000);
}

CPB.71420.03.04
Mod Coala Nr.document Semnat Data
Elaborat Corotaș Iosif Lit. Coala Coli
Verificat Rișcovoi Alina 1
Tema: Semaforul la intersecție
A-218
case 3:
if(millis()-time>1000) case 10: case 17:
{ if(millis()-time>j) if(millis()-time>1000)
time=millis(); { {
digitalWrite(z2,1); time=millis(); time=millis();
digitalWrite(zp2,1); digitalWrite(j1,1); digitalWrite(z1,1);
state=4; state=11; digitalWrite(zp1,1);
} } state=18;
break; break; }
case 4: break;
if(millis()-time>1000) case 11: case 18:
{ if(millis()-time>z) if(millis()-time>1000)
time=millis(); { {
time=millis();
digitalWrite(z2,0); time=millis();
digitalWrite(zp2,0); digitalWrite(j1,0);
digitalWrite(z1,0);
state=5; digitalWrite(k1,0);
digitalWrite(kp1,0);
digitalWrite(zp1,0);
} digitalWrite(kp1,1);
break; digitalWrite(z1,1);
digitalWrite(zp1,1); digitalWrite(j1,1);
case 5: state=19;
if(millis()-time>1000) state=12;
} }
{
break; break;
time=millis();
digitalWrite(z2,1); case 12: case 19:
digitalWrite(zp2,1); if(millis()-time>1000) if(millis()-time>k)
state=6; { {
} time=millis(); time=millis();
break; digitalWrite(z1,0); digitalWrite(j1,0);
case 6: digitalWrite(zp1,0); digitalWrite(k1,1);
if(millis()-time>1000) state=13; digitalWrite(kp1,1);
{ } digitalWrite(z1,0);
time=millis(); break; digitalWrite(zp1,0);
digitalWrite(z2,0); case 13: state=20;
digitalWrite(zp2,0); if(millis()-time>1000) }
state=7; { break;
time=millis();
} case 20:
break; digitalWrite(z1,1);
if(millis()-time>j)
case 7: digitalWrite(zp1,1);
state=14;
{
if(millis()-time>1000) time=millis();
{ }
break; digitalWrite(j2,1);
time=millis(); state=21;
digitalWrite(z2,1); case 14:
if(millis()-time>1000) }
digitalWrite(zp2,1);
{ break;
state=8;
} time=millis(); case 21:
break; digitalWrite(z1,0); if(millis()-time>z)
case 8: digitalWrite(zp1,0); {
if(millis()-time>1000) state=15; time=millis();
{ } digitalWrite(j2,0);
time=millis(); break; digitalWrite(k2,0);
digitalWrite(z2,0); case 15: digitalWrite(kp2,0);
digitalWrite(zp2,0); if(millis()-time>1000) digitalWrite(z2,1);
digitalWrite(kp2,1); { digitalWrite(zp2,1);
digitalWrite(j2,1); time=millis(); state=22;
state=9; digitalWrite(z1,1); }
} digitalWrite(zp1,1); break;
state=16;
break; case 22:
case 9: }
if(millis()-time>k) break;
case 16:
{
{
time=millis(); if(millis()-time>1000)
{ state=1;
digitalWrite(k2,1); }
digitalWrite(j2,0); time=millis();
digitalWrite(z1,0); break;
state=10;
digitalWrite(zp1,0); }
}
break; state=17; }
} delay(20);
break; }

Coala
CPB.71420.03.04 2
Mod Coala Nr.document Semnat Data

You might also like