Forum: Mikrocontroller und Digitale Elektronik ATMEGA 32L - gedrückter Button wird nicht erkannt


von Felix K. (felix133711)


Lesenswert?

Hallo,

ich scheitere gerade an einem sehr banalen Problem. Ich versuche am 
PORTC an den Pins 4,5,6 jeweils 3 verschiedene Buttons einzulesen.

Leider erkennt mein Programm nur den PINC6. PINC5 und PINC4 werden 
leider nicht erkannt.

In dem folgenden Codebeispiel versuche ich das Ganze jetzt am PINC5 - 
wie bereits erwähnt mit PINC6 funktioniert es - die LED am PORTC (PC0) 
wird ein und ausgeschalten.

Die Funktion "debounce" wurd hier aus dem Forum entnommen:

https://www.mikrocontroller.net/articles/Entprellung#Warteschleifen-Verfahren


int main (void) {
  DDRC &= ~((1 << PINC5));
  DDRC |= (1 << PINC0);
  PORTC |= (1 << PINC5);

  while(1)
  {
    if (debounce(&PINC, PC5)) {

      PORTC ^= (1 << PC0);
    }
  }
}

Habe direkt auch mal am PC5 gemessen - durch die Pull-Up Widerstände 
werden dort schöne 5V geliefert. Dann kann es doch eigentlich nur noch 
am DDRC liegen? Das der µC diesen PINC5 nicht als Eingang interpretiert?
Ich bin ratlos.

Hat jemand eine Ahnung woran das liegen könnte?

von Peter II (Gast)


Lesenswert?

PC5 TDI (JTAG Test Data In)
PC4 TDO (JTAG Test Data Out)

Hast du JTAG abgeschaltet?

von spess53 (Gast)


Lesenswert?

Hi

JTAG-Interface deaktivieren.

MfG Spess

von H.Joachim S. (crazyhorse)


Lesenswert?

Wie oft hatten wir das Thema eigentlich schon?

von Joachim B. (jar)


Lesenswert?

PC5  (TDI)
PC4  (TDO)

JTAG noch nicht abgeschaltet?

http://www.atmel.com/images/doc2503.pdf
Seite35

von Felix K. (felix133711)


Lesenswert?

H.Joachim S. schrieb:
> Wie oft hatten wir das Thema eigentlich schon?

Tut mir leid, aber nach was genau sucht man da bitte als Anfänger, wenn 
man so ein Problem hat?

Danke Leute!

von Peter II (Gast)


Lesenswert?

Felix K. schrieb:
> Tut mir leid, aber nach was genau sucht man da bitte als Anfänger, wenn
> man so ein Problem hat?

gar nicht suchen, Doku lesen.

von J.-u. G. (juwe)


Lesenswert?

Guter Einstieg (der u.a. diesen Fehler auflistet):

https://www.mikrocontroller.net/articles/AVR_Checkliste

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

J.-u. G. schrieb:
> der u.a. diesen Fehler auflistet
Der nächste allseits beliebte Fehler wäre dann die CLKDIV Fuse...    ;-)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.