Learning classes.
Dependencies: C12832
Bomba.cpp@0:6a7df3c69564, 2016-02-10 (annotated)
- Committer:
- tbjazic
- Date:
- Wed Feb 10 11:17:49 2016 +0000
- Revision:
- 0:6a7df3c69564
Initial.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
tbjazic | 0:6a7df3c69564 | 1 | #include "mbed.h" |
tbjazic | 0:6a7df3c69564 | 2 | #include "C12832.h" |
tbjazic | 0:6a7df3c69564 | 3 | #include "Bomba.h" |
tbjazic | 0:6a7df3c69564 | 4 | |
tbjazic | 0:6a7df3c69564 | 5 | Bomba::Bomba(PinName aktivirajPin) : aktiviraj(aktivirajPin), lcd(p5, p7, p6, p8, p11), buzz(p26) { |
tbjazic | 0:6a7df3c69564 | 6 | aktiviran = false; |
tbjazic | 0:6a7df3c69564 | 7 | aktiviraj.rise(this, &Bomba::aktivacija); |
tbjazic | 0:6a7df3c69564 | 8 | debounce.start(); |
tbjazic | 0:6a7df3c69564 | 9 | buzz = 0; |
tbjazic | 0:6a7df3c69564 | 10 | buzz.period(1.0f/1e3); |
tbjazic | 0:6a7df3c69564 | 11 | x = 5; |
tbjazic | 0:6a7df3c69564 | 12 | lcd.cls(); |
tbjazic | 0:6a7df3c69564 | 13 | lcd.locate(0,3); |
tbjazic | 0:6a7df3c69564 | 14 | lcd.printf("PURS_ZI_003\nAktiviraj bombu!"); |
tbjazic | 0:6a7df3c69564 | 15 | } |
tbjazic | 0:6a7df3c69564 | 16 | |
tbjazic | 0:6a7df3c69564 | 17 | void Bomba::aktivacija() { |
tbjazic | 0:6a7df3c69564 | 18 | if(debounce.read_ms() > 200) { |
tbjazic | 0:6a7df3c69564 | 19 | if (!aktiviran) { |
tbjazic | 0:6a7df3c69564 | 20 | detoniraj.attach(this, &Bomba::detonacija, x); |
tbjazic | 0:6a7df3c69564 | 21 | aktiviran = true; |
tbjazic | 0:6a7df3c69564 | 22 | lcd.cls(); |
tbjazic | 0:6a7df3c69564 | 23 | lcd.locate(0,3); |
tbjazic | 0:6a7df3c69564 | 24 | lcd.printf("Bomba aktivirana"); |
tbjazic | 0:6a7df3c69564 | 25 | } else { |
tbjazic | 0:6a7df3c69564 | 26 | detoniraj.detach(); |
tbjazic | 0:6a7df3c69564 | 27 | buzz = 0; |
tbjazic | 0:6a7df3c69564 | 28 | aktiviran = false; |
tbjazic | 0:6a7df3c69564 | 29 | lcd.cls(); |
tbjazic | 0:6a7df3c69564 | 30 | lcd.locate(0,3); |
tbjazic | 0:6a7df3c69564 | 31 | lcd.printf("Bomba deaktivirana"); |
tbjazic | 0:6a7df3c69564 | 32 | } |
tbjazic | 0:6a7df3c69564 | 33 | debounce.reset(); |
tbjazic | 0:6a7df3c69564 | 34 | } |
tbjazic | 0:6a7df3c69564 | 35 | } |
tbjazic | 0:6a7df3c69564 | 36 | |
tbjazic | 0:6a7df3c69564 | 37 | void Bomba::detonacija() { |
tbjazic | 0:6a7df3c69564 | 38 | buzz = 0.5; |
tbjazic | 0:6a7df3c69564 | 39 | lcd.cls(); |
tbjazic | 0:6a7df3c69564 | 40 | lcd.locate(0,3); |
tbjazic | 0:6a7df3c69564 | 41 | lcd.printf("Boom!!!"); |
tbjazic | 0:6a7df3c69564 | 42 | } |