Antonio Karanović
/
Semafor
asd
main.cpp
- Committer:
- akaranovi
- Date:
- 2020-11-29
- Revision:
- 1:f40a898ee10e
- Parent:
- 0:c3966e70a28e
File content as of revision 1:f40a898ee10e:
#include "mbed.h" #include "led.h" Serial pc(USBTX, USBRX); LED led1(A0); LED led2(D2); LED led3(D3); LED led4(D4); LED led5(D5); InterruptIn button(USER_BUTTON); Timer automobil; Timer pjesak; Timer flipper; Timer zuta; Timer debounce; //Funkcija hardverskog interrupta void flip() { if(debounce.read_ms()>200) { led1.status(0); led3.status(0); led4.status(0); led5.status(0); int i; for(i=0; i<20; i++) { led2.flip(); wait(0.5); } } debounce.reset(); } int main() { pjesak.reset(); automobil.reset(); debounce.start(); button.rise(&flip); while(1) { //Početno stanje LED-ica led1.status(0); led2.status(0); led3.status(1); led4.status(1); led5.status(0); //Nakon 12.5 sekundi ugasi zeleno svijetlo za automobile automobil.start(); if (automobil.read() > 12.5) { led3.flip(); //Nakon 13 sekundi upali žuto svijetlo za automobile } if (automobil.read() > 13) { led2.flip(); //Nakon 15 sekundi upali crveno za automobile i zeleno za pješake } if(automobil.read()>15) { automobil.stop(); led1.flip(); led2.flip(); led4.flip(); led5.flip(); pjesak.reset(); pjesak.start(); while(pjesak.read()<7) { if (pjesak.read() > 5) led2.flip(); } automobil.reset(); pjesak.stop(); } led1.flip(); led2.flip(); } return 0; }