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

Committer:
nikolarp
Date:
Mon Apr 05 17:52:54 2021 +0000
Revision:
2:49f00e7e7913
Parent:
1:db40e2456381
Child:
3:6536ed4d073e
Ispravak Alarm=!Alarm

Who changed what in which revision?

UserRevisionLine numberNew 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 1:db40e2456381 5 Ticker flip;
nikolarp 1:db40e2456381 6 Timer debounce;
nikolarp 1:db40e2456381 7 float ADCdata;
nikolarp 1:db40e2456381 8 void toggle(){
nikolarp 1:db40e2456381 9 if (debounce.read_ms()>200)
nikolarp 2:49f00e7e7913 10 Alarm=!Alarm;
nikolarp 1:db40e2456381 11 }
nikolarp 1:db40e2456381 12 void flip1(){
nikolarp 1:db40e2456381 13 crvena = !crvena;
nikolarp 1:db40e2456381 14 zelena = !zelena;
nikolarp 1:db40e2456381 15 zuta =!zuta;
nikolarp 1:db40e2456381 16 }
nikolarp 1:db40e2456381 17 int main(){
nikolarp 1:db40e2456381 18 LED();
nikolarp 1:db40e2456381 19 SegInit();
nikolarp 1:db40e2456381 20 debounce.start();
nikolarp 1:db40e2456381 21 button.rise(&toggle);
nikolarp 1:db40e2456381 22 while (1)
nikolarp 1:db40e2456381 23 {
nikolarp 1:db40e2456381 24 ADCdata=Ain;
nikolarp 1:db40e2456381 25 pc.printf("%f \n\r",ADCdata);
nikolarp 1:db40e2456381 26 if(ADCdata>=0.1 && ADCdata<0.49){
nikolarp 1:db40e2456381 27 zelena=1;
nikolarp 1:db40e2456381 28 zuta=0;
nikolarp 1:db40e2456381 29 crvena=0;
nikolarp 1:db40e2456381 30 }
nikolarp 1:db40e2456381 31 else if(ADCdata>=0.5 && ADCdata<0.79){
nikolarp 1:db40e2456381 32 zelena=1;
nikolarp 1:db40e2456381 33 zuta=1;
nikolarp 1:db40e2456381 34 crvena=0;
nikolarp 1:db40e2456381 35 }
nikolarp 1:db40e2456381 36 else if(ADCdata>=0.8 && ADCdata<=0.89){
nikolarp 1:db40e2456381 37 zelena=1;
nikolarp 1:db40e2456381 38 zuta=1;
nikolarp 1:db40e2456381 39 crvena=1;
nikolarp 1:db40e2456381 40 }
nikolarp 1:db40e2456381 41 else if(ADCdata>=0.0 && ADCdata<0.09){
nikolarp 1:db40e2456381 42 zelena=0;
nikolarp 1:db40e2456381 43 zuta=0;
nikolarp 1:db40e2456381 44 crvena=0;
nikolarp 1:db40e2456381 45 }
nikolarp 1:db40e2456381 46 else if(ADCdata>=0.9 && ADCdata<=1.0){
nikolarp 1:db40e2456381 47 flip.attach(&flip1, 0.2);
nikolarp 1:db40e2456381 48 wait(0.4);
nikolarp 1:db40e2456381 49 flip.detach();
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