Hallo in die Runde und ich wünsche ein sonnigen Feiertag.
Hab hier einen Arduino Mega 2560 aufm Tisch liegen und an PIN 21 einen Taster angeschlossen, der eine LED PIN 34 zum leuchten bringen soll.
Laut Datenblatt und meiner Info hat der Chip interne PULLups, welche aktiviert werden "können".
-
Am Eingang 21 (Taster) hab ich einen 27 K Pulldown dran und wenn der Pullup nicht aktiviert (pinMode(interruptPin, INPUT) ist hat der PIN 3,561 V und gedrückt natürlich 5 V
-
Wenn ich den Pullup intern aktiviere (pinMode(interruptPin, INPUT_PULLUP), hat der Eingang 3,772 V und gedrückt 5V.
Hat jemand eine Idee, wo mein Fehler liegt bei Fall 1 ? Sollten ja 0 V sein mit dem Pulldown und nicht aktivierten Pullup.
Danke.
// Setze den Pin für die LED auf 13 const byte ledPin = 34; // Setze den Interruptpin auf 2 const byte interruptPin = 21; // Definiere eine globale volatile Variable für den Status der LED volatile byte state = LOW;
void setup() { // Lege den Pin für die LED als Outputpin fest pinMode(ledPin, OUTPUT); // Lege den Interruptpin als Inputpin mit Pullupwiderstand fest pinMode(interruptPin, INPUT_PULLUP); // Lege die ISR 'blink' auf den Interruptpin mit Modus 'CHANGE': // "Bei wechselnder Flanke auf dem Interruptpin" --> "Führe die ISR aus" attachInterrupt(digitalPinToInterrupt(interruptPin), blink, FALLING); }
void loop() { // Schreibe den Status der LED auf den LED-Pin zurück: // "Schalte die LED an oder aus" digitalWrite(ledPin, state); }
void blink() { // Invertiere den Status: "Lass die LED blinken von HIGH auf LOW/ an auf aus" state = !state; }

