Taster einlesen DigitalIn

Dependencies:   mbed

Committer:
Enenkel
Date:
Mon Mar 09 12:14:18 2015 +0000
Revision:
1:27bd875c1646
Parent:
0:7bf2f1754883
Tasten einlesen

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Enenkel 1:27bd875c1646 1 // HIMBED _Lektion06 "TASTEN einlesen"
Enenkel 0:7bf2f1754883 2 // BUKME Graz, by Enenkel 26.2.2014
Enenkel 0:7bf2f1754883 3 // Aufgabe:
Enenkel 0:7bf2f1754883 4 // Schreibe die Software so um, dass:
Enenkel 1:27bd875c1646 5 // Bei drücken der Taste SW4 die LED D1 leuchtet
Enenkel 1:27bd875c1646 6 // Bei drücken der Taste SW3 die LED D2 leuchtet
Enenkel 1:27bd875c1646 7 // Bei drücken der Taste SW2 die LED D3 leuchtet
Enenkel 1:27bd875c1646 8 // Bei drücken der Taste SW4 die LED D4 leuchtet
Enenkel 0:7bf2f1754883 9
Enenkel 0:7bf2f1754883 10 #include "mbed.h"
Enenkel 0:7bf2f1754883 11
Enenkel 0:7bf2f1754883 12 DigitalOut ledD1(LED1);
Enenkel 0:7bf2f1754883 13 DigitalOut ledD2(LED2);
Enenkel 1:27bd875c1646 14 //
Enenkel 1:27bd875c1646 15 //
Enenkel 0:7bf2f1754883 16 DigitalOut ledD5(P1_0);
Enenkel 0:7bf2f1754883 17 DigitalOut ledD6(P1_1);
Enenkel 0:7bf2f1754883 18
Enenkel 0:7bf2f1754883 19
Enenkel 0:7bf2f1754883 20 // Definition der Taster (Switches)
Enenkel 1:27bd875c1646 21 DigitalIn sw1(P0_15); // SW1 -> sein IO Pin ist laut Schaltplan der P0_15
Enenkel 1:27bd875c1646 22 DigitalIn sw2(P0_10); // Die Pins werden hier mit DigitalIn belegt !
Enenkel 1:27bd875c1646 23 // da ist was falsch -> richtig stellen !
Enenkel 0:7bf2f1754883 24
Enenkel 0:7bf2f1754883 25
Enenkel 0:7bf2f1754883 26 // *** Hauptprogramm ***
Enenkel 0:7bf2f1754883 27 int main() {
Enenkel 0:7bf2f1754883 28 while(1) {
Enenkel 1:27bd875c1646 29 if (sw1==1) //IF .... ELSE ... // Wenn SW1 (die Taste1) gedrückt ist, dann:
Enenkel 1:27bd875c1646 30
Enenkel 0:7bf2f1754883 31 ledD1=1;
Enenkel 0:7bf2f1754883 32 // LED1 on
Enenkel 0:7bf2f1754883 33 else {
Enenkel 0:7bf2f1754883 34 // beginn der ELSE Bedingung... wenn die Taste NICHT gedrückt ist
Enenkel 0:7bf2f1754883 35 ledD1=0; // LED1 off
Enenkel 0:7bf2f1754883 36 } // } beendet die Anweisungen für die else - Bedingungen
Enenkel 1:27bd875c1646 37
Enenkel 1:27bd875c1646 38 wait (0.01); // Pause von 0,1 sec vor nächster Abfrage.
Enenkel 0:7bf2f1754883 39 // in dieser Zeit erfolgt kein EINLESEN des Schalters
Enenkel 0:7bf2f1754883 40 // und die LED bleiben wie sie sind.
Enenkel 0:7bf2f1754883 41
Enenkel 0:7bf2f1754883 42 if (sw2==1) //IF .... ELSE ...
Enenkel 0:7bf2f1754883 43 // Wenn SW1 (die Taste1) gedrückt ist, dann:
Enenkel 1:27bd875c1646 44
Enenkel 0:7bf2f1754883 45 ledD2=1; // LED1 on
Enenkel 0:7bf2f1754883 46 else { // beginn der ELSE Bedingung... wenn die Taste NICHT gedrückt ist
Enenkel 0:7bf2f1754883 47 ledD2=0;
Enenkel 0:7bf2f1754883 48 // LED1 off
Enenkel 0:7bf2f1754883 49 }
Enenkel 1:27bd875c1646 50
Enenkel 1:27bd875c1646 51 wait (0.01);
Enenkel 1:27bd875c1646 52
Enenkel 1:27bd875c1646 53 // } beendet die Anweisungen für die else - Bedingungen
Enenkel 1:27bd875c1646 54 wait (0.01); // Pause von 0,1 sec vor nächster Abfrage.
Enenkel 1:27bd875c1646 55 // in dieser Zeit erfolgt kein EINLESEN des Schalters
Enenkel 1:27bd875c1646 56 // und die LED bleiben wie sie sind.
Enenkel 0:7bf2f1754883 57
Enenkel 1:27bd875c1646 58 }
Enenkel 1:27bd875c1646 59 }
Enenkel 1:27bd875c1646 60 // *********** Ende *************