Hallo faratt,
hat leider eine Weile gedauert, aber jetzt konnte ich mich deinem Problem etwas näher widmen. Deine Lösung funktioniert zwar, aber es sollte etwas anders gelöst werden. Der Fehler steckt wie du schon richtig erkannt hast, in der PollSwitch Funktion.
RN-User thowil hatte mich schon vor über einem Jahr auf den Fehler hingewiesen und mir eine funktionierende Lösung geschickt. Leider habe ich die wohl irgendwie verschlampt.![]()
Schande über mich.
So geht es richtig:
Der Port Bit muß am Ende der Funktion wieder auf Eingang geschaltet werden. Diese Zeile fehlte.Code:DDRD |= SWITCHES; // Port-Bit SWITCHES als Output SWITCH_ON; // Port-Bit auf HIGH zur Messung i = ReadADC(SWITCH, 10); DDRD &= ~SWITCHES; // Port-Bit SWITCHES als Input SWITCH_OFF; // Port-Bit auf LOW (PullUp abschalten)







Zitieren
Lesezeichen