atmega16 reagiert nicht auf Tastendruck

Gast #236177
Lesenswert?
• ▲
▼
Hallo,
ich habe mich mal ein mein erstes richtiges kleines µC-Programm
gewagt.
Soweit funktioniert alles, aber es erfolgt keine Reaktion auf Eingaben
(4 Taster). Entprellung ist eine andere sache, mir gehts dadrum dass er
überhaupt mal reagiert.

Im Anhang die relevanten Teile.
Die Pullups habe ich auch schonmal abgeschaltet.

Die Taster sollen Active High sein.
Habe sie so verschaltet: VCC---Taster---µC.
von µC nach GND habe ich auch schon 10k Widerstände ausprobiert.

Der µC reagiert einfach nicht.
Die for-Schleife mit dem Switch läuft korrekt.

Sieht jemand einen Fehler im Code? Simulation mit AVRStudio läuft so
wie es gedacht ist.

Gruß

Michael
Angehängte Dateien:
Gast #236178
Lesenswert?
• ▲
▼
> PORTD= 0xFF; //Pull-Up-Widerstände aktivieren
Ich nehme mal an, das ist jetzt PORTD= 0x00; Oder?
Dann sollten 10kOhm gegen Masse ausreichen, um sicheren 0-Pegel zu
erreichen.
Dann sollte das auch so gehen.

Gruss
Jadeclaw.
Gast #236179
Lesenswert?
• ▲
▼
das kann in die Hose gehen. Erstmal sind die Ports nicht immer wirklich
8bit breit, (2313 z.B.), ausserdem spielt der Wert vorhandener, aber
von dir nicht beachteter Ports eine Rolle.
Also besser so:

taster = PIND & 0x0f; //nur die unteren 4 Bits sind noch relevant
Gast #236180
Lesenswert?
• ▲
▼
Hi!
Danke für Eure Antworten! Also wenn es dieses Forum nicht geben
würde...

Ich habe meine Schaltung leicht geändert und die Taster als ActiveLow
gebaut, das spart die externen Widerstände und die unbelegten Pins
gehen durch die internen PullUps ja automatisch auf High.

Enprellt habe ich das Ganze durch
_delay_loop_2(0);
_delay_loop_2(0);
nach jedem Tastendruck. Ich weiß dass das nicht wirklich optimal ist,
aber es funktioniert genau so, wie es soll, und wenn man die Taste
gedrückt hält, wird der Befehl brav mehrfach ausgeführt.

Danke nochmal!

Michael

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.