mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Matrix Tastatur mit int. Pullups


Autor: Reinhard Seibt (gotbread)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich möchte eine 3x4 Matrix-Tastatur entsprechend der Zeichnung an einem
ATMega32 anschließen, und zwar am Port C.

der rückgabewert der funktion soll angeben, welche taste gedrückt wurde,
bit nr 1 = taste 1, bit nr 2 = taste 2, usw.

seltsamerweise werden nur die tasten 10 (1 spalte, 4te zeile) und 11
(2 spalte, 4te zeile) erkannt. die tasten 1-9 werden dauerhaft als
gedrückt (1) erkannt.
warum funktioniert die abfrage nicht?

PORTC und DDRC werden nur einmal am anfang gesetzt, und danach nurnoch
in der routine verändert.

die spannung an den zeilen-pins beträgt ca. 1,9V. müssten das nicht mehr
sein, da sie an den internen pullups hängen?

MfG Gotbread

Autor: Michael B. (planlessmichi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also den Code habe ich mir jetzt nicht angeschaut, aber die 
Spannungsangabe von 1,9V kommt mir mächtig bekannt vor :-( (Hat mich mal 
richtig Arbeit gekostet). Da tippe ich doch mal auf nach noch 
aktiviertem JTAG!
Hast Du die Fuses mal angeschaut und JTAG deaktiviert?

Autor: Reinhard Seibt (gotbread)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
habe grade mal nachgeguckt, und tatsächlich, JTAG war aktiviert.
Nachdem ich es ausgestellt habe, funktionierte der code auf einmal 
perfekt.

(beim pasten habe ich eine Zeile vergessen, nämlich das 
wieder-einschalten
der letzen spalte)

Auch ein Pin, von dem ich dachte er wäre "tot" reagiert plötzlich wieder 
:)

Dankeschön, darauf wäre ich nicht gekommen.

Autor: Michael B. (planlessmichi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gern geschehen :-) Diesen "toten" Pin hatte ich damals auch, weshalb ich 
dann nach langer Fehlersuche (auf der Platine und im Quellcode) den 
(SMD-)Controller mit einem Dremel rausgefräst und mir dabei auch noch 
die Platine durchtrennt habe :-( (Hatte da noch keine 
Heißluftmöglichkeit)
Dann das große Entsetzen: Neuer Controller, aber gleiches Fehlerbild :-(

Aber sowas prägt dann und bei PORTC springen dann bei mir immer gleich 
alle Alarmglocken an :-)

Also dann noch viel Spaß bei Deinem Projekt :-)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.