![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Konstrukcijski zadatak iz predmeta Mikroupravljači, Božićna svjetla. Program koristi jedan NUCLEO-F072RB, tri LED diode(crvenu, žutu i zelenu), žice za spajanje i eksperimentalnu ploču. Kada se priključi napajanje NUCLEO-u, sa pritiskom na USER gumb se uključuju LED diode, višestrukim pritiskom se mjenja kojim ritmom svjetle, nakon 10 sekundi radi zaštite se svjetla gase.
main.cpp
- Committer:
- asantek
- Date:
- 2021-02-23
- Revision:
- 3:3c6cfb9e5bc9
- Parent:
- 1:cd07874dbf19
File content as of revision 3:3c6cfb9e5bc9:
#include "mbed.h" #include "led.h" Serial pc(USBTX, USBRX); LED led1(D2); LED led2(D3); LED led3(D4); Timer svjetla; Timer debounce; InterruptIn gumb(USER_BUTTON); int x=0; int i=0; void pritisak() { if(debounce.read_ms()>200) { x++; } debounce.reset(); } int main() {//Inicijalizacija LED-ica led1.stanje(0); led2.stanje(0); led3.stanje(0); debounce.start(); svjetla.reset(); gumb.rise(&pritisak); svjetla.start(); //Beskonačna while petlja while (true) { //Nakon 10 sekundi isključi LED svjetla if(svjetla.read_ms()>10000){ led1.stanje(0); led2.stanje(0); led3.stanje(0); } else{ if(x==0){ led1.stanje(0); led2.stanje(0); led3.stanje(0); } if(x==1){ i++; if(i==1){led1.stanje(1);led2.stanje(0);led3.stanje(0);} if(i==2){led1.stanje(0);led2.stanje(1);led3.stanje(0);} if(i==3){led1.stanje(0);led2.stanje(0);led3.stanje(1);} if(i==4){i=0;} wait(0.1); } if(x==2){ i++; if(i==1){led1.stanje(1);led2.stanje(0);led3.stanje(0);} if(i==2){led1.stanje(0);led2.stanje(1);led3.stanje(0);} if(i==3){led1.stanje(0);led2.stanje(0);led3.stanje(1);} if(i==4){i=0;} wait(0.2); } if(x==3){ led1.stanje(1);led2.stanje(1);led3.stanje(1); wait(0.2); led1.stanje(0);led2.stanje(0);led3.stanje(0); wait(0.2); } if(x==4){x=0;} } } }