BERTL 16 T1 - LED, Taster , LDR und blue LED Test

Dependencies:   mbed

Fork of _B16_T1 by Gottfried Enenkel

main.cpp

Committer:
Enenkel
Date:
2016-04-29
Revision:
5:8d00369f47e9
Parent:
4:a33d2e24765a

File content as of revision 5:8d00369f47e9:

/***********************************
name:   BERTL16_Test1 8.1.2016
author: Enenkel 
description:  TEST1  testet die 3,3V und 3,7V 
 -> Die 12 LEDs blinken 2 mal der Reihe nach auf
 -> Dann blinken alle LED 2x
 -> Danach blinken die 2 bleuen LED mehrfach
 -> Dann leuchtet bei jedem Tastendruck eine oder mehrere LED auf
 -> UND beim Abdunkeln des LDR leuchten die LED D10 - D13 auf
    
***********************************/
#include "mbed.h"
   
// Definition der LEDS als AUSGANGE
DigitalOut LedD1 (P1_10);      
DigitalOut LedD2 (P1_11);
DigitalOut LedD4 (P1_12);
DigitalOut LedD5 (P1_13);
DigitalOut LedD6 (P1_14);      
DigitalOut LedD7 (P1_15);
DigitalOut LedD8 (P1_16);
DigitalOut LedD9 (P1_17);
DigitalOut LedD10 (P1_18);     
DigitalOut LedD11 (P2_16);
DigitalOut LedD12 (P1_20);
DigitalOut LedD13 (P1_21);

//Definition der Schalter als Eingange
DigitalIn TA1 (P1_23);      
DigitalIn TA2 (P1_24);
DigitalIn TA3 (P1_25);
DigitalIn TA4 (P1_26);
DigitalIn TA5 (P1_27);      
DigitalIn TA6 (P1_28);
DigitalIn TA7 (P1_30);
DigitalIn TA8 (P1_31);

void lamptest();
void tastertest();
void ldrtest();                      // testet die LDR
     AnalogIn LDR (P0_14);           // Adresse der LDR
void blueledtest();                  // Tested die blauen LED
     DigitalOut BlueLed (P1_5);
void RGBtest();                      // Derzeit nicht dabei   
     DigitalOut RGB (P1_22);         // Adresse RGB LED


// ************* Hauptprogramm ************************
int a;
int b;
int main() {
    lamptest();    // Alle LED einmal blinken 
    blueledtest(); // Tested die blauen LED 
    tastertest();  // läuft ewig weiter ! ! 

   
  
  
  
   }

// UNTEPROGRAMME ******************************************************
   void lamptest() {  //*****************************************************
      a=0;
      LedD1=LedD2=LedD4=LedD5=LedD6=LedD7=LedD8=LedD9=LedD10=LedD11=LedD12=LedD13=1;
      while (a<2)  {     // 2 Mal durch die Schleife laufen  
                         // Alle LED einmal blinken  (2 Mal durchlaufen
         LedD1=0;            // LED D1 ON  
         wait (0.5);         // 0.5 sec warten  
         LedD1=1;            // LED D1 AUS
         LedD2=0;            // LED D2 EIN   
         wait (0.5);
         LedD2=1;
         LedD4=0;
         wait (0.5);
         LedD4=1;
         LedD5=0;
         wait (0.5);
         LedD5=1;
         LedD6=0;
         wait (0.5);
         LedD6=1;
         LedD7=0;
         wait (0.5);
         LedD7=1;
         LedD8=0;
         wait (0.5);
         LedD8=1;
         LedD9=0;
         wait (0.5);
         LedD9=1;
         LedD10=0;
         wait (0.5);
         LedD10=1;
         LedD11=0;
         wait (0.5);
         LedD11=1;
         LedD13=0;
         wait (0.5);
         LedD13=1;
         LedD12=0;
         wait (0.5);
         LedD12=1;
         wait (0.5);

         b=0;
         while (b<2)   // Alle LED blinken  2 Mal
            {      
            LedD1=LedD2=LedD4=LedD5=LedD6=LedD7=LedD8=LedD9=LedD10=LedD11=LedD12=LedD13=0;  
            wait (0.5);
            LedD1=LedD2=LedD4=LedD5=LedD6=LedD7=LedD8=LedD9=LedD10=LedD11=LedD12=LedD13=1;
            wait (0.5);
            b=b++;
            }
         a=a++;                 // a = a+1 -> in C besser a++
      }
    } 
 
 // ***************************************************************************
 void tastertest() { //Taster Test     Bei Drücken einer Taste leuchtet die LED !
    LedD1=LedD2=LedD4=LedD5=LedD6=LedD7=LedD8=LedD9=LedD10=LedD11=LedD12=LedD13=1;
    while(1)        // läuft ewig weiter
    {
      if (TA1 == 1) {
           LedD10=LedD11=LedD12=LedD13=1;
         }
         else {   
           LedD10=LedD11=LedD12=LedD13=0;   
         }  
      if (TA2 == 1) {
           LedD4=1;
         }
         else {   
           LedD4=0;   
         }  
       if (TA3 == 1) {
           LedD1=1;
         }
         else {   
           LedD1=0;   
         }  
       if (TA4 == 1) {
           LedD6=LedD8=1;
         }
         else {   
           LedD6=LedD8=0;   
         }  
       if (TA5 == 1) {
           LedD7=1;
         }
         else {   
           LedD7=0;   
         }  
       if (TA6 == 1) {
           LedD9=1;
         }
         else {   
           LedD9=0;   
         }  
       if (TA7 == 1) {
           LedD5=1;
         }
         else {   
           LedD5=0;   
         }  
       if (TA8 == 1) {
           LedD2=1;
         }
         else {   
           LedD2=0;   
         } 
        // 
        //ldrtest();
        wait (0.01);  
                         
    }   
  }    
//*******************************************************************  
void blueledtest()  //needs 5V
 {
  a=0;
  while (a<10)   
     {
       BlueLed=1;
       wait (0.25);
       BlueLed=0;
       wait (0.25);
       a++;
     }    
     
     
 }     
/*************** LDR TEST *******************************/        
void ldrtest()
        {
        if(LDR <= 0.2) {
           LedD10=0;
           }
           else
           { 
           LedD10=1;
           }
        
        if(LDR <= 0.07)  {     // Ab einer Lichtstärke von 0.15 oder kleiner
           LedD11 = 0; 
           }       // Ist die LED D1 EIN
           else {
           LedD11 = 1;
           }
        if (LDR <= 0.1) {
           LedD13=0;
           }
           else {
           LedD13=1;
           }
        if (LDR <= 0.15) {
           LedD12=0;
           }
           else {
           LedD12=1;
           }
         }

/********************** ENDE ******************************/