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
Diff: main.cpp
- Revision:
- 0:957be69322e9
--- /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