LED.h & Umwandeln.h

Dependencies:   m3pi_ng mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers LED.h Source File

LED.h

00001 //LEDs ansteuern
00002   #include "mbed.h"
00003   #include "m3pi_ng.h"
00004  
00005 DigitalOut myled(LED1);
00006 DigitalOut myled2(LED2);
00007 DigitalOut myled3(LED3);
00008 DigitalOut myled4(LED4);
00009 m3pi rot;
00010    
00011 class LED // Steuert die blauen und/oder roten LEDs an
00012 {
00013 public:
00014 int i;
00015 
00016 void Blau_Blinken(int Wie_oft, float Wartezeit) //Anzahl von blinkern, Wartezeit dazwischen
00017 {
00018     for (i=Wie_oft; i>=1; i--)
00019     {
00020         myled = myled2 = myled3 = myled4 = 1;
00021         wait(Wartezeit);
00022         myled = myled2 = myled3 = myled4 = 0;
00023         wait(Wartezeit);
00024     }
00025 }
00026 
00027 void Rot_Blinken(int Wie_oft, float Wartezeit) //Anzahl von blinkern, Wartezeit dazwischen
00028 {
00029     for (i=Wie_oft; i>=1; i--)
00030     {
00031         rot.leds(255);
00032         wait(Wartezeit);
00033         rot.leds(0);
00034         wait(Wartezeit);
00035     }
00036 }
00037 
00038 void Blau_Zahl(int Zahl) //eine Zahl zwischen 0 und 4
00039 {
00040     if (Zahl>=4)    //alle 4 an
00041     myled = myled2 = myled3 = myled4 = 1;
00042     else if (Zahl==3)    //1-3 an, 4 aus
00043     {
00044     myled = myled2 = myled3 = 1;
00045     myled4 = 0;
00046     }
00047     else if (Zahl==2)    //1-2 an, 3-4 aus
00048     {
00049     myled = myled2 = 1;
00050     myled3 = myled4 = 0;
00051     }
00052     else if (Zahl==1)
00053     {
00054     myled = 1;
00055     myled2 = myled3 = myled4 = 0;
00056     }
00057     else
00058     myled = myled2 = myled3 = myled4 = 1;
00059 }
00060 
00061 void Rot_Zahl(int Zahl) //eine Zahl zwischen 0 und 8
00062 {
00063     if (Zahl>=8) rot.leds(255);
00064     if (Zahl==7) rot.leds(127);
00065     if (Zahl==6) rot.leds(63);
00066     if (Zahl==5) rot.leds(31);
00067     if (Zahl==4) rot.leds(15);
00068     if (Zahl==3) rot.leds(7);
00069     if (Zahl==2) rot.leds(3);
00070     if (Zahl==1) rot.leds(1);
00071     if (Zahl==0) rot.leds(0);
00072 }
00073 
00074 void Runden_LED(int Zahl) //Rot zählt 1-4, bei 5 leuchtet ein blaues auf und rot geht aus
00075 {
00076     if (Zahl>24) {Zahl=Zahl%24;}
00077     
00078     i=Zahl%5;
00079     Zahl=(Zahl-i)/5;
00080     
00081     
00082     
00083     if (Zahl>=4)    //4 blaue LED an
00084     myled = myled2 = myled3 = myled4 = 1;
00085     else if (Zahl==3)
00086     {
00087     myled = myled2 = myled3 = 1;
00088     myled4 = 0;
00089     }
00090     else if (Zahl==2)    //1-2 an, 3-4 aus
00091     {
00092     myled = myled2 = 1;
00093     myled3 = myled4 = 0;
00094     }
00095     else if (Zahl==1)
00096     {
00097     myled = 1;
00098     myled2 = myled3 = myled4 = 0;
00099     }
00100     else
00101     myled = myled2 = myled3 = myled4 = 0;
00102     
00103     if (i==4) rot.leds(60);
00104     else if (i==3) rot.leds(28);
00105     else if (i==2) rot.leds(12);
00106     else if (i==1) rot.leds(4);
00107     else if (i==0) rot.leds(0);
00108 }
00109 };