HI , DANKE FÜR DEINE ANTWORT:
ADKANALLESEN HABE ICH SO GESCHRIEBEN DASS ICH DANN DIREKT WERTE ZWISCHEN 0 UND 5 BEKOMME. DIE DIGITALISIERTE WERTE WERDEN DIREKT IN DER FUNKTION DURCH 1024 DIVIDIERT
ICH WOLLTE ES SO MACHEN.
ZUERST VIER ZUSTÄNDE DEFINIEREN.
ZUSTAND 1KEINKONTAKT) WO DER ANALOGWERT KLEINER ALS 0,5 "ODER" GRÖSSER ALS 5 (((adwert < 0.5) || (adwert > 5)) )
ZUSTAND2TASTE1) 0,5<ADWERT<1,5
ZUSTAND3TASTE2) 2<ADWERT<3
ZUSTAND4TASTE3) 4<ADWERT<5
DANACH WOLLTE ICH DIE TASTEN SO EINFACH WIE MÖGLICH ENTPRELLEN DURCH EINE SWITCH CASE FUNKTION:
WENN NUR WERTE RAUSKOMMEN WEIL TASTE PRELLEN
ZUM BEISPIEL WERTE ZWISCHEN 0 BIS 5 SOLLTE ES NICHT ALS EINEN TASTENDRUCK GESEHEN WERDEN:
DESWEGEN
Taste = KeinKontakt | Taste = Taste1 | Taste = Taste2 | Taste = Taste3;
WENN ZWEIMAL WERTE: 0,5<ADWERT<1,5 ERKANNT WURDEN
SOLLTE ES ALS TASTEEINS DEFINIEREN UND 10 MS WARTEN
>>case TasteEins: ((Taste = Taste1) && (Taste = Taste1));
_delay_ms(10);
break;
UND DAS GLEICHE FÜR TASTEZWEI UND TASTE DREI.
WOLLTE SO EINE ART BESTÄTIGUNG DES TASTENDRUCKS SCHREIBEN
ERST NACH ZWEIMAL ERKENNEN DANN WIRD ALS TASTE ERKANNT:
???
Lesezeichen