abc Arduino
|
|
4.1.. Napraviti simulaciju semafora (po dvije LED diode: crvena, žuta i zelena). Koristiti funkcije za svaku kombinaciju. Šema povezivanja:
Listing programa : // semafor 1 int r1 = 7; // crveni 1 int y1 = 8; // zuti 1 int g1 = 9; // zeleni 1 int r2 = 2; // crveni 2 int y2 = 3; // zuti 2 int g2 = 4; // zeleni 2 int kasni_s1 = 3000; // kasnjenje semafora 1 int kasni_s2 = 3000; // kasnjenje semafora 2 int prelaz = 2000; // kasnjenje semafora 2 void f_r1_g2(){ digitalWrite(r1, HIGH); digitalWrite(y1, LOW); digitalWrite(g1, LOW); digitalWrite(r2, LOW); digitalWrite(y2, LOW); digitalWrite(g2, HIGH); Serial.println("C1 Crveni 1 G2 zeleni 2"); } void f_r1_y1_y2() { digitalWrite(r1, HIGH); digitalWrite(y1, HIGH); digitalWrite(g1, LOW); digitalWrite(r2, LOW); digitalWrite(y2, HIGH); digitalWrite(g2, LOW); Serial.println("C1 Crveni 1 Y1 zuti 1 G2 zeleni 2"); } void f_g1_r2() { digitalWrite(r1, LOW); digitalWrite(y1, LOW); digitalWrite(g1, HIGH); digitalWrite(r2, HIGH); digitalWrite(y2, LOW); digitalWrite(g2, LOW); Serial.println("G1 zeleni 1 C2 Crveni 2 "); } void f_y1_r2_y2() { digitalWrite(r1, LOW); digitalWrite(y1, HIGH); digitalWrite(g1, LOW); digitalWrite(r2, HIGH); digitalWrite(y2, HIGH); digitalWrite(g2, LOW); Serial.println("Y1 zuti 1 C2 Crveni 2 Y2 zuti 2 "); } void setup() { pinMode(r1, OUTPUT); pinMode(y1, OUTPUT); pinMode(g1, OUTPUT); pinMode(r2, OUTPUT); pinMode(y2, OUTPUT); pinMode(g2, OUTPUT); pinMode(13, OUTPUT); Serial.begin(9600); } void loop() { f_r1_g2(); // crveni 1 ::: zeleni 2 delay(kasni_s1); f_r1_y1_y2(); // crveni 1 i ziti 1 ::: i zeleni 2 delay(prelaz); // Wait for 1000 millisecond(s) f_g1_r2(); // zeleni 1 ::: crveni 2 delay(kasni_s2); f_y1_r2_y2(); // zuti 1 ::: crveni 2 i ziti 2 delay(prelaz); // Wait for 1000 millisecond(s) } Ispis na ekranu: |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |