Dependencies:   mbed

Revision:
0:d3aabd70ecde
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Nov 15 18:02:16 2018 +0000
@@ -0,0 +1,73 @@
+#include "mbed.h"
+
+// DigitalOut eine Variable für ein Bit
+// BusOut eine Variable für eine ganze Bitgruppe
+// Warum ist es sinnvolll dass die Variablen D20_D19_... heissen
+// Zusammenhang der untenstehenden Deklarationen mit der Boardbeschreibung (Skript M0)
+
+// Alle 12-Leds des M0-Boards zu einer Bitgruppe zusammenfassen
+
+//        LSB                                                      MSB
+//        2^0   2^1   2^2                                          2^11
+BusOut lb(P1_13,P1_12,P1_7,P1_6,P1_4,P1_3,P1_1,P1_0,LED4,LED3,LED2,LED1);
+//        D20   D19   D18  D17  D16  D15  D14  D13  D4   D3   D2   D1
+
+
+//          SW1    SW2    SW3    SW4
+//          Bit0   Bit1   Bit2   Bit3
+BusIn btn (P0_10, P0_15, P0_23, P1_16);
+
+void BtnBlinker1();
+//SW4 => D17 blinken
+//SW3 => D18 blinken
+//SW2 => D19
+//SW1 => D20
+
+void BtnLogic();
+// wenn Sw1 und Sw2 gedrückt sollen D20 und D19 leuchten
+
+// wenn Sw3 !!oder!! Sw4 gedrückt sollen D18 und D17 leuchten
+
+// ansonsten finster
+
+int main() 
+{
+   lb = 0;
+    while(1)
+    {
+        BtnLogic();
+    }
+
+}
+
+void BtnBlinker1()
+{
+    lb = 0;
+    
+    if( btn & 8) // SW4
+    lb = lb | 8;
+    if( btn & 4) // SW3
+    lb = lb | 4;
+    if( btn & 2) // SW2
+    lb = lb | 1;
+    if( btn & 1) // SW1
+    lb = lb | 2;
+    
+    wait_ms(200);
+    lb = 0;
+    wait_ms(200);
+    
+    
+}
+
+
+void BtnLogic() 
+{
+    
+    
+    if (btn & 1 && btn & 2)
+    lb = lb | 1;
+    lb = lb | 2;
+    
+    }
+