Tastertest AVR Evaluationsboard Pollin

OP #1528337
Lesenswert?
• ▲
▼
Hallo,

ich habe das Pollin Atmel Evaluationboard 2.01 und pobiere gerade einige 
Dinge aus. Ich möchte einfach, das die LEDs die Tasterstati anzeigen.
Auf dem Board sind die verwendeten Taster 2/3 mit PD3/4 und die LEDs 1/2 
mit PD5/5 verbunden. Es ist ein Tiny2313 gesteckt.
Dazu habe ich folgendes Assembler-Programm geschrieben.

;----------------------------------------------------------------------- 
-
.include "2313def.inc"    ;Definitionsdatei laden
.cseg                     ;Beginn eines Code-Segmentes
.org 0                    ;Startadresse = 0
;
start:
  ldi  r16, low(ramend)
  ldi  r17, high(ramend)  ;Adresse vom RAM-Ende laden
  out  spl, r16           ;Stackpointer auf
; out  sph, r17           ;RAM-Ende setzen
  ldi  r16, 0b01100000    ;PortD: PB5-6 auf Ausgang
  out  ddrd, r16          ;setzen


loop:
  in   r16, PIND          ;Port D einlesen
  lsl  r16                ;2x nach links, dann sind die Bits
  lsl  r16                ;der Taster 2/3 bei den LED's 1/2
  out  portd, r16         ;Daten an PortD ausgeben
  nop
  clr  r16
  rjmp loop               ;Programmschleife neu beginnen
;----------------------------------------------------------------------- 
-

Direkt nach dem überspielen mit PonyProg funktioniert alles einwandfrei. 
Ich drücke die Taster in jeder möglichen Kombination und die LEDs 
leuchten passend dazu. Lasse ich jetzt das Bord einige Sekunden in Ruhe 
und drücke dann einen Taster, so leuchtet LED 1für einige Sekunden auf 
und ich habe völlig undefinierte LED Zusände. Z.B. LED 1 geht auf Taster 
3 an und bleibt an, auch wenn kein Taster mehr gedrückt ist, Das 
passiert auch mit Taster 2 und LED 1. Ich vermute das es kein 
technisches Problem ist, sondern ein Programmfehler.
Kann mir evtl. dazu jemand etwas sagen?

Gruß
Kaczy
OP #1528604
Lesenswert?
• ▲
▼
Danke für die schnelle Antwort.
Ich habe jetzt die Kondensatoren wieder ausgelötet, leider ist das 
Ergebnis unvreändert, alllerdings subjektiv erscheint es mir so, als ob 
das teilweise fehlerhafte Dauerleuchten der LED kürzer geworden ist.
Ich habe mit mal einige Schaltpläne zur Beschaltung der Eingabeports 
angesehen. Hier im Tutorial und auch in den anderen, werden die Eingänge 
mit einem Pullup-Widerstand gegen +5V geschaltet und der Taster tastet 
gegen GND. Auf dem Pollinboard ist es ein Pulldown-Widerstand, der gegen 
GND geschaltet ist und der Taster tastet gegen +5V. Ich habe jetzt mal 
einen externen Taster geschaltet. Durch die Pullup leuchten die LEDs 
dauerhaft und wenn ich taste, gehen sie aus. Das ist auch logisch und 
hatte bisher keine Fehlfunktion.

Ist es den generell nicht empfehlnswert gegen +5V zu tasten.

Gruß
Kaczy

Antwort schreiben

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.

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.