ATmega32 PortD PD4 immer auf high?

OP #823703
Lesenswert?

Hallo,

auf dem Atmel Evaluationboard von Pollin sind beim ATmega32 am PortD 2-4 
je einen Taster mittels Active High angeschlossen.
Bei Druck sollte der pegel also auf high gehen. Das funktioniert auch 
bei Pin 2 und 3 problemlos, nur liegt pin 4 ständgi auf high 
(nachgemessen).

Frage: Woran liegts? PD4 ist am ATmega32 auch als OC1B gekennzeichnet, 
laut Datenblatt sollte das aber deaktiviert sein.

Im Code habe ich zunächst die Pins auf EIngang geschaltet und dann noch 
die Pullups deaktiviert.
1
// Port D 2-4 Input, 5-6 Output
2
DDRD = (0 << DDD2) | (0 << DDD3) | (0 << DDD4) | (1 << DDD5) | (1 << DDD6); 
3
  
4
//PullUps off
5
PORTD |= (0<<PD2);        
6
PORTD |= (0<<PD3);        
7
PORTD |= (0<<PD4);

Hat vielleicht jemand eine Idee woran es liegen könnte?

Gruß,
Andreas
Persönliche Seite #824658
Lesenswert?

Taster 90° verdreht eingesetzt oder angeschlossen?

Einige Taster haben folgenden Aufbau:

         ===
          |
        =====

1  *----+   +-----* 4
        |   |
2  *----+   +-----* 3

d.h. jeweils zwei Kontakte an einer Seite sind miteinander verbunden.

Wenn der Taster 1-4 oder 2-4 oder 1-3 oder 2-4 in der Schaltleitung 
sitzt, klappt das Öffnen/Schliessen.

Wenn der Taster 1-2 oder 3-4 in der Schaltleitung sitzt, klappt das 
Öffnen/Schliessen nicht. Es ist eine Dauerverbindung vorhanden.
Gast #824914
Lesenswert?

Hast du mal mit einem Durchgangsprüfer (oder Widerstandsmessgerät) 
nachgemessen ob die High Verbindung auch da ist wenn am µC keine 
Spannung anliegt? Damit könnte man den µC als Verursacher ausschließen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren