Program semafora sastavljen od 5 LED dioda od kojih su 3 za semafor vozila, a 2 za semafor pješaka. Program započinje "servisnim" načinom blinkanjem žutog svjetla semafora te pokretanjem automatskog ciklusa u kojem se izmjenjuje rad semafora za vozila te semafora za pješake.

Dependencies:   mbed

https://os.mbed.com/media/uploads/tdragosa/2021-05-05_13-29-45.jpg

Files at this revision

API Documentation at this revision

Comitter:
tdragosa
Date:
Wed May 05 11:26:42 2021 +0000
Commit message:

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
diff -r 000000000000 -r 957be69322e9 main.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Wed May 05 11:26:42 2021 +0000
@@ -0,0 +1,99 @@
+#include "mbed.h" // pozivanje mbed.h biblioteke
+DigitalOut crveno_v(D3); // deklariranje output pina za diodu crvenog svijetla semafora vozila
+DigitalOut zuto_v(D4); // deklariranje output pina za diodu žutog svijetla semafora vozila
+DigitalOut zeleno_v(D5); // deklariranje output pina za diodu zelenog svijetla semafora vozila
+DigitalOut crveno_p(D6); // deklariranje output pina za diodu crvenoog svijetla semafora pješaka
+DigitalOut zeleno_p(D7);// deklariranje output pina za diodu zelenog svijetla semafora pješaka
+Ticker vozila; // deklariranje tickera vozila
+Ticker pjesaci; // deklariranje tickera pješaci
+int i=0; // deklariranje integera i
+
+
+
+void voz () // početak podfunkcije za ciklus semafora vozila
+{
+    crveno_v=1;
+    zuto_v=0;
+    zeleno_v=0;
+    crveno_p=1;
+    zeleno_p=0;
+    wait(2);
+
+    crveno_v=1;
+    zuto_v=1;
+    zeleno_v=0;
+    crveno_p=1;
+    zeleno_p=0;
+    wait(2);
+
+    crveno_v=0;
+    zuto_v=0;
+    zeleno_v=1;
+    crveno_p=1;
+    zeleno_p=0;
+    wait(15);
+}
+
+
+
+void pjes () // početak podfunkcije za ciklus semafora pješaka
+{
+
+
+
+    crveno_v=0;
+    zuto_v=1;
+    zeleno_v=0;
+    crveno_p=1;
+    zeleno_p=0;
+    wait(2);
+
+    crveno_v=1;
+    zuto_v=0;
+    zeleno_v=0;
+    crveno_p=1;
+    zeleno_p=0;
+    wait(2);
+
+    crveno_v=1;
+    zuto_v=0;
+    zeleno_v=0;
+    crveno_p=0;
+    zeleno_p=1;
+    wait(10)
+
+}
+
+
+int main() // glavna funkcija
+{
+    crveno_v=0;
+    zuto_v=0;
+    zeleno_v=0;
+    crveno_p=0;
+    zeleno_p=0;
+
+    for(i=0;  i<=10; i++) { // 10 promjena stanja
+        zuto_v=!zuto_v; // u što se upisuje - što se upisuje
+        wait(0.5);
+    }
+
+    crveno_v=1;
+    zuto_v=0;
+    zeleno_v=0;
+    crveno_p=1;
+    zeleno_p=0;
+    wait(5);
+
+    zuto_v=1;
+    wait(2);
+
+    crveno_v=0;
+    zuto_v=0;
+    zeleno_v=1;
+    wait(10);
+
+    pjesaci.attach(&pjes, 1); //
+    vozila.attach(&voz, 1); //
+
+}
\ No newline at end of file
diff -r 000000000000 -r 957be69322e9 mbed.bld
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Wed May 05 11:26:42 2021 +0000
@@ -0,0 +1,1 @@
+https://os.mbed.com/users/mbed_official/code/mbed/builds/65be27845400
\ No newline at end of file