RGB Dimmer mit Klassen

Dependencies:   mbed

Committer:
Kilian
Date:
Fri Dec 12 17:21:54 2014 +0000
Revision:
0:2af9d1c6c6ee
RGB Dimmerprogramm mit Klassen

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kilian 0:2af9d1c6c6ee 1 class ButtonEventCounter
Kilian 0:2af9d1c6c6ee 2 {
Kilian 0:2af9d1c6c6ee 3 public:
Kilian 0:2af9d1c6c6ee 4 // Konstruktor wird aufgerufen wenn ein Objekt dieser Klasse angelegt wird
Kilian 0:2af9d1c6c6ee 5 ButtonEventCounter(PinName aPin) : _btn(aPin)
Kilian 0:2af9d1c6c6ee 6 {
Kilian 0:2af9d1c6c6ee 7 val=0;
Kilian 0:2af9d1c6c6ee 8 }
Kilian 0:2af9d1c6c6ee 9
Kilian 0:2af9d1c6c6ee 10 void CheckButton(int aDown); //hier wird das rauf und runter zählen codiert //Check Button muss mit 10Hz aufgerufen werden
Kilian 0:2af9d1c6c6ee 11 float GetValF(); //Wert im Range 0.0 ... 1.0 als Float
Kilian 0:2af9d1c6c6ee 12
Kilian 0:2af9d1c6c6ee 13 public:
Kilian 0:2af9d1c6c6ee 14 int val; //0...100 momentaner Wert des ButtonEventCounter
Kilian 0:2af9d1c6c6ee 15
Kilian 0:2af9d1c6c6ee 16 private:
Kilian 0:2af9d1c6c6ee 17 DigitalIn _btn;
Kilian 0:2af9d1c6c6ee 18 };
Kilian 0:2af9d1c6c6ee 19
Kilian 0:2af9d1c6c6ee 20
Kilian 0:2af9d1c6c6ee 21
Kilian 0:2af9d1c6c6ee 22 void ButtonEventCounter::CheckButton(int aDown)
Kilian 0:2af9d1c6c6ee 23 {
Kilian 0:2af9d1c6c6ee 24 if(_btn.read()) //wenn der _btn gedrückt ist
Kilian 0:2af9d1c6c6ee 25 {
Kilian 0:2af9d1c6c6ee 26 if(aDown)
Kilian 0:2af9d1c6c6ee 27 val--;
Kilian 0:2af9d1c6c6ee 28 else
Kilian 0:2af9d1c6c6ee 29 val++;
Kilian 0:2af9d1c6c6ee 30
Kilian 0:2af9d1c6c6ee 31 if (val<0)
Kilian 0:2af9d1c6c6ee 32 val=0;
Kilian 0:2af9d1c6c6ee 33 if (val>100)
Kilian 0:2af9d1c6c6ee 34 val=100;
Kilian 0:2af9d1c6c6ee 35 }
Kilian 0:2af9d1c6c6ee 36 }
Kilian 0:2af9d1c6c6ee 37
Kilian 0:2af9d1c6c6ee 38
Kilian 0:2af9d1c6c6ee 39 float ButtonEventCounter::GetValF()
Kilian 0:2af9d1c6c6ee 40 {
Kilian 0:2af9d1c6c6ee 41 return (float)val/100.0;
Kilian 0:2af9d1c6c6ee 42 }