Nadzor opterećenja sustava. Na 10% vrijednosti pali se zelena LED dioda, na 50% pali se žuta, na 80% pali se crvena, na 90% sve diode se pale i gase. Pritiskom na pushbutton pali se alarmna led dioda.
https://os.mbed.com/media/uploads/nikolarp/shema_fb_thumb.jpg
main.cpp@3:6536ed4d073e, 2021-04-08 (annotated)
- Committer:
- nikolarp
- Date:
- Thu Apr 08 12:25:44 2021 +0000
- Revision:
- 3:6536ed4d073e
- Parent:
- 2:49f00e7e7913
.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
nikolarp | 1:db40e2456381 | 1 | #include "mbed.h" |
nikolarp | 1:db40e2456381 | 2 | #include "IO.h" |
nikolarp | 1:db40e2456381 | 3 | #include "SegDisplay.h" |
nikolarp | 1:db40e2456381 | 4 | Serial pc(USBTX, USBRX); |
nikolarp | 3:6536ed4d073e | 5 | Ticker flip; |
nikolarp | 3:6536ed4d073e | 6 | Timer debounce; |
nikolarp | 3:6536ed4d073e | 7 | float ADCdata; |
nikolarp | 3:6536ed4d073e | 8 | void toggle(){ |
nikolarp | 1:db40e2456381 | 9 | if (debounce.read_ms()>200) |
nikolarp | 2:49f00e7e7913 | 10 | Alarm=!Alarm; |
nikolarp | 1:db40e2456381 | 11 | } |
nikolarp | 3:6536ed4d073e | 12 | void flip1(){ // |
nikolarp | 1:db40e2456381 | 13 | crvena = !crvena; |
nikolarp | 1:db40e2456381 | 14 | zelena = !zelena; |
nikolarp | 1:db40e2456381 | 15 | zuta =!zuta; |
nikolarp | 3:6536ed4d073e | 16 | wait(0.6); |
nikolarp | 3:6536ed4d073e | 17 | flip.detach(); |
nikolarp | 1:db40e2456381 | 18 | } |
nikolarp | 1:db40e2456381 | 19 | int main(){ |
nikolarp | 3:6536ed4d073e | 20 | LED(); |
nikolarp | 1:db40e2456381 | 21 | SegInit(); |
nikolarp | 1:db40e2456381 | 22 | debounce.start(); |
nikolarp | 3:6536ed4d073e | 23 | button.rise(&toggle); |
nikolarp | 1:db40e2456381 | 24 | while (1) |
nikolarp | 1:db40e2456381 | 25 | { |
nikolarp | 1:db40e2456381 | 26 | ADCdata=Ain; |
nikolarp | 1:db40e2456381 | 27 | pc.printf("%f \n\r",ADCdata); |
nikolarp | 1:db40e2456381 | 28 | if(ADCdata>=0.1 && ADCdata<0.49){ |
nikolarp | 1:db40e2456381 | 29 | zelena=1; |
nikolarp | 1:db40e2456381 | 30 | zuta=0; |
nikolarp | 1:db40e2456381 | 31 | crvena=0; |
nikolarp | 1:db40e2456381 | 32 | } |
nikolarp | 1:db40e2456381 | 33 | else if(ADCdata>=0.5 && ADCdata<0.79){ |
nikolarp | 1:db40e2456381 | 34 | zelena=1; |
nikolarp | 1:db40e2456381 | 35 | zuta=1; |
nikolarp | 1:db40e2456381 | 36 | crvena=0; |
nikolarp | 1:db40e2456381 | 37 | } |
nikolarp | 1:db40e2456381 | 38 | else if(ADCdata>=0.8 && ADCdata<=0.89){ |
nikolarp | 1:db40e2456381 | 39 | zelena=1; |
nikolarp | 1:db40e2456381 | 40 | zuta=1; |
nikolarp | 1:db40e2456381 | 41 | crvena=1; |
nikolarp | 1:db40e2456381 | 42 | } |
nikolarp | 1:db40e2456381 | 43 | else if(ADCdata>=0.0 && ADCdata<0.09){ |
nikolarp | 1:db40e2456381 | 44 | zelena=0; |
nikolarp | 1:db40e2456381 | 45 | zuta=0; |
nikolarp | 1:db40e2456381 | 46 | crvena=0; |
nikolarp | 1:db40e2456381 | 47 | } |
nikolarp | 1:db40e2456381 | 48 | else if(ADCdata>=0.9 && ADCdata<=1.0){ |
nikolarp | 3:6536ed4d073e | 49 | flip.attach(&flip1,0.1); |
nikolarp | 1:db40e2456381 | 50 | } |
nikolarp | 1:db40e2456381 | 51 | Seg1 = SegConvert(ADCdata*10); |
nikolarp | 1:db40e2456381 | 52 | wait (0.5); |
nikolarp | 1:db40e2456381 | 53 | } |
nikolarp | 1:db40e2456381 | 54 | } |
nikolarp | 1:db40e2456381 | 55 |