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

Committer:
nikolarp
Date:
2021-04-08
Revision:
3:6536ed4d073e
Parent:
2:49f00e7e7913

File content as of revision 3:6536ed4d073e:

#include "mbed.h"
#include "IO.h"
#include "SegDisplay.h"
Serial pc(USBTX, USBRX);
Ticker flip; 
Timer debounce; 
float ADCdata; 
void toggle(){ 
    if (debounce.read_ms()>200) 
        Alarm=!Alarm;       
        }        
void flip1(){ //
    crvena = !crvena;
    zelena = !zelena;
    zuta =!zuta;
    wait(0.6);
    flip.detach(); 
    }
int main(){
    LED(); 
    SegInit();
    debounce.start();
    button.rise(&toggle); 
    while (1) 
    {    
ADCdata=Ain;
pc.printf("%f \n\r",ADCdata);
if(ADCdata>=0.1 && ADCdata<0.49){
    zelena=1;
    zuta=0;
    crvena=0;
}
else if(ADCdata>=0.5 && ADCdata<0.79){
    zelena=1;
    zuta=1;
    crvena=0;
}
else if(ADCdata>=0.8 && ADCdata<=0.89){
    zelena=1;
    zuta=1;
    crvena=1;
}
else if(ADCdata>=0.0 && ADCdata<0.09){
    zelena=0;
    zuta=0;
    crvena=0;
}
else if(ADCdata>=0.9 && ADCdata<=1.0){   
    flip.attach(&flip1,0.1); 
}
Seg1 = SegConvert(ADCdata*10);
wait (0.5);
    }
}