cbcx

Dependencies:   DmTftLibrary mbed

Fork of LCD_Proj by Tobias Fuchsbichler

Revision:
4:0d4286278f41
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/fuellstand.h	Mon Feb 01 13:08:54 2016 +0000
@@ -0,0 +1,64 @@
+#include "mbed.h"
+
+class Fuellstand{
+    int grenze; //Wert unter welchem die Pumpe ON oder OFF sein soll
+    int now;       //Aktueller Messwert
+    public:
+    //constructers
+        Fuellstand(int,PinName, PinName, PinName, PinName,PinName);    //Konstruktor mit Schwellenwerteingabe bei fehler defaultwert
+                          //p25p     p50p     p75p     p100p   pboden
+    //methodes
+        int wert();                 //gibt den aktuelle 1wert zurück in 25er Schritten
+        
+        bool activate();            //gibt an ob die Pumpe aus sein soll
+        void setgrenze(int);    //um die grenze zu setzten
+        
+        void setboden(bool);        //Messungaktivieren
+    private:
+        void getnow();              //misst den Wert
+        PinName pp25p;
+        PinName pp50p;
+        PinName pp75p;
+        PinName pp100p;
+        PinName ppboden;
+};
+    //constructers
+Fuellstand::Fuellstand(int ober, PinName new25p, PinName new50p, PinName new75p, PinName new100p ,PinName newboden){   //Konstruktor mit Schwellenwerteingabe bei fehler defaultwert
+    if(ober>0&&ober<100)    grenze=ober;
+    else    grenze=80;
+    pp25p=new25p;    //25%
+    pp50p=new50p;
+    pp75p=new75p;
+    pp100p=new100p;
+    ppboden=newboden;
+}
+    //methodes
+void Fuellstand::getnow(){                      //misst den Wert
+    DigitalIn DI25(pp25p);
+    DigitalIn DI50(pp50p);
+    DigitalIn DI75(pp75p);
+    DigitalIn DI100(pp100p);
+    if(DI25==1)  now=25;
+    else    now=0;
+    if(DI50==1)   now=50;
+    if(DI75==1)   now=75;
+    if(DI100==1)   now=100;
+}
+int Fuellstand::wert(){                         //gibt den aktuelle wert zurück in 25er Schritten
+    getnow();
+    return now;
+}
+bool Fuellstand::activate(){                    //gibt an ob die Pumpe aus sein soll
+    getnow();
+    if(now<=grenze)
+        return true;
+    else
+        return false;
+}
+void Fuellstand::setgrenze(int newgrenze){      //um die grenze zu setzten
+    grenze=newgrenze;
+}
+void Fuellstand::setboden(bool newbodenstate){  //um die 1 aktivieren zu setzten
+    DigitalOut DOboden(ppboden);
+    DOboden=newbodenstate;
+}
\ No newline at end of file