Ich habe über einige Digitalpins Taster angeschlossen und in einem Array gespeichert,
nun warte ich mit "while(btnState[0,1,2,3,6,7,8,9]== LOW){}" ab bis einer der States auf High geht, und würde dann gerne einer Variable einen Bestimmten wert zuordnen.
Geht das per switch- case Anweisung?
switch(btnState[btnarrynmb] == HIGH)
{
case 0 : TasterNummer = 0;
break;
case 1 : TasterNummer = 1;
break;
case 2 : TasterNummer = 2;
break;
case 3 : TasterNummer = 3;
break;
case 6 : TasterNummer = 4;
break;
case 7 : TasterNummer = 5;
break;
case 8 : TasterNummer = 6;
break;
case 9 : TasterNummer = 7;
break;
default : return 0;
}
ganz so simpel gehts nun nicht. Zeig mal den gesamten Code.
Bitte Code Tags oben links </> verwenden, sonst wird er verstümmelt bei Sonderzeichen etc.
Wie hast du die Taster elektrisch angeschlossen?
Hört sich für mich so an, als müsstest du eigentlich nicht den "Umweg" über ein Array gehen. Besser erklären, bzw. Code her.
Wahrscheinlich ist sowas eher was du willst:
buttonPin [6] = {4,5,6,7,8,9};
for( int i = 0; i < 6; i++){
if( digitalRead( buttonPin[i] ) == HIGH){
TasterNummer = i ;
break;
}
}