Tasten, LED; RGB und LDR Test
Dependencies: mbed
Fork of _Lektion_6 by
main.cpp
- Committer:
- Enenkel
- Date:
- 2015-04-28
- Revision:
- 1:d6e5f9c188d3
- Parent:
- 0:7bf2f1754883
- Child:
- 2:b09f7006a9b3
File content as of revision 1:d6e5f9c188d3:
// HIMBED _TEST1 // BUKME Graz, by Enenkel 26.2.2014 #include "mbed.h" // ******** Definitionen ********** Serial pc(USBTX, USBRX); // Definition der Taster (Switches) DigitalIn sw1(P0_10); //SW1 DigitalIn sw2(P0_15); //SW2 -> sein IO Pin ist laut Schaltplan der P0_15 DigitalIn sw3(P0_23); //SW3 DigitalIn sw4(P1_16); //SW4 // Definition der 12 LED's DigitalOut ledD1(P1_8); DigitalOut ledD2(P1_9); DigitalOut ledD3(P1_10); DigitalOut ledD4(P1_11); DigitalOut ledD13(P1_0); DigitalOut ledD14(P1_1); DigitalOut ledD15(P1_3); DigitalOut ledD16(P1_4); DigitalOut ledD17(P1_6); DigitalOut ledD18(P1_7); DigitalOut ledD19(P1_12); DigitalOut ledD20(P1_13); // RGB LED DigitalOut ledGR(P0_9); // grüne LED wenn es anders ist bitte mir melden ! ! ! DigitalOut ledBL(P1_15); // blaue LED DigitalOut ledRT(P0_21); // rote LED // LDR Input AnalogIn LDR(P0_12); // Analoges einlesen des LDR int a; // Hauptprogramm int main() { char readChar = 0; pc.printf("Welcome to BERTL14\n\r"); /******************** RGB LED TEST ************************/ pc.printf("RGB TEST WEIS - ROT GRÜN BLAU\n\r"); ledGR = 0; // Alle RGB LED EIN ledBL = 0; ledRT = 0; wait(2); // Warte 1 sec. ledRT = 0; // Rote LED einschalten -> INVERSE LOGIG ! ledGR = 1; // andere LED ausschalten ledBL = 1; // (nicht nötig, da sie schon AUS sind !) wait(1); ledRT = 1; // Alle LED ausschalten -> INVERSE LOGIG ! ledGR = 0; // Grüne LED = EIN ledBL = 1; wait(1); ledRT = 1; // Alle LED ausschalten -> INVERSE LOGIG ! ledGR = 1; ledBL = 0; // Blaue LED = EIN wait(1); ledRT = 1; // Alle LED ausschalten -> INVERSE LOGIG ! ledGR = 1; ledBL = 1; wait(0.1); /********************* 2x Lauflicht der LEDS *************/ pc.printf("LAUFLICHT ÜBER 12 LED \n\r"); a=1; while (a<3) { ledD1=1; wait(0.5); ledD1=0; ledD2=1; wait (0.2); ledD2=0; ledD3=1; wait (0.2); ledD3=0; ledD4=1; wait (0.2); ledD4=0; ledD13=1; wait (0.2); ledD13=0; ledD14=1; wait (0.2); ledD14=0; ledD15=1; wait (0.2); ledD15=0; ledD16=1; wait (0.2); ledD16=0; ledD17=1; wait (0.2); ledD17=0; ledD18=1; wait (0.2); ledD18=0; ledD19=1; wait (0.2); ledD19=0; ledD20=1; wait (0.2); ledD20=0; a=a++; } // **************** TASTER TEST ******************** pc.printf("TASTER und LDR TEST\n\r"); while(1) { if (sw4==1) // SW4 (die Taste1) gedrückt ist, dann: ledD1=1; else { ledD1=0; // LED1 off } wait (0.001); // Pause von 0,1 sec vor nächster Abfrage. if (sw3==1) ledD2=1; else { // beginn der ELSE Bedingung... wenn die Taste NICHT gedrückt ist ledD2=0; } wait (0.001); if (sw2==1) //IF .... ELSE ... ledD4=1; else { // beginn der ELSE Bedingung... wenn die Taste NICHT gedrückt ist ledD4=0; } wait (0.001); if (sw1==1) //IF .... ELSE ... ledD3=1; // LED1 on else { // beginn der ELSE Bedingung... wenn die Taste NICHT gedrückt ist ledD3=0; } // } beendet die Anweisungen für die else - Bedingungen wait (0.001); // Pause von 0,1 sec vor nächster Abfrage. /*************** LDR TEST *******************************/ if(LDR <= 0.2) ledD1=1; else ledD1=0; if(LDR <= 0.07) // Ab einer Lichtstärke von 0.15 oder kleiner ledD4 = 1; // Ist die LED D1 EIN else ledD4 = 0; if (LDR <= 0.1) ledD3=1; else ledD3=0; if (LDR <= 0.15) ledD2=1; else ledD2=0; wait (0.01); /************************** *********************/ /* readChar = pc.getc(); if(readChar >= 65 && readChar <= 90){ // Großbuchstaben in Kleinbuchstaben umwandeln pc.putc(readChar + 32); } else if(readChar >= 97 && readChar <= 122){ // Kleinbuchstaben in Großbuchstaben umwandeln pc.putc(readChar - 32); } else { // Sonst schicke was gekommen ist pc.putc(readChar); } */ } } /***********/ /******************** ENDE ***********************/