main
Dependencies: mbed Alarmni_sustav
Fork of Alarm_Barnjak by
main.cpp
- Committer:
- nbarnjak
- Date:
- 2021-05-06
- Revision:
- 1:ffe9956395e9
- Parent:
- 0:d33881c5ba2d
File content as of revision 1:ffe9956395e9:
#include "mbed.h" #include "klasaLED.h" Serial pc(USBTX, USBRX); LED_ led1(A0); //alarm-zelena LED_ led2(D2);//centrala-žuta-signalna LED LED_ led3(D3);//alarm-crvena LED_ led4(D4);//centrala-zelena LED_ led5(D5);//centrala-crvena InterruptIn button(USER_BUTTON); Timer senzor; Timer alarm; Timer debounce; void flip() //Hardverski interrupt { if(debounce.read_ms()>200) { led1.status(0); led3.status(0); led4.status(0); led5.status(0); int i; for(i=0; i<6; i++) { led2.flip(); led5.flip(); wait(0.5); senzor.reset(); senzor.start(); } } } int main() { debounce.start(); button.rise(&flip); while(1) { //Početno LED stanje led1.status(0); led2.status(0); led3.status(1); led4.status(1); led5.status(0); //Nakon 5 sekundi slijedi detekcija ulaska koji se sa senzora proslijeđuje na centralu senzor.start(); if (senzor.read() > 5) { led3.flip(); //Dvije sekunde nakon detekcija ulaza upali signalnu LED na centrali } if (senzor.read() > 7) { led2.flip(); //Ukoliko centrala nije resetirana unutar 5 sekundi od aktivacije signalne LED, upali alarm i blokiraj centralu i alarm od resetiranja } if(senzor.read()>12 ) { led1.flip(); led2.flip(); led4.flip(); led5.flip(); alarm.start(); int x; while(alarm.read()<1 && debounce.read_ms()>200) { for(x=0; x<4; x++) { led1.flip(); led5.flip(); wait(0.25); alarm.reset(); alarm.start(); } } } } return 0; }