Taster für 1 LED Ansteuerung Problem

OP #1256896
Hi, vielleicht kann jemand helfen. Bin Anfänger.
Wollte auf dem STK500 eine LED (LED0) über einen Taster (SW0) ansteuern.
das funktioniert auch, allerdings auch bei jedem anderem Schalter sowie 
die dazugehörige LED.

Hat jemand eine Idee? Die anderen Taster und LEDs sollen bei Betätigung 
aus bleiben.

Danke
gruss aus HH


ldi r16, 0x01    ;den Wert 0x01 (entspricht 0b00000001) in das Register 
r16
out DDRB, r16    ;Ausagbe das Registers r16 in das  IO Register DDRB

ldi r16, 0x00
out DDRD, r16    ;Alle Pins am Port D durch Ausgabe von 0x00 ins
                    ;Richtungsregister DDRD als Eingang konfigurieren


ldi r16, 0x01       ;An allen Pins vom Port D die Pullup-Widerstände
out PORTD, r16     ;aktivieren. Dies geht deshalb durch eine Ausgabe
                    ;nach PORTD, da ja der Port auf Eingang gestellt 
ist.


loop:
    in r16, PIND  ;Anliegende Werte über Taster nach r16 einlesen
    out PORTB, r16
    rjmp loop
Gast
hubert hat wohl kein stk500.

bei dem stk500 leuchten die LED's bei einer 0 am ausgang und sind bei 
einer 1 aus.
auch bedeutet ein betätigter taster eine 0 und unbetätigt 1.

d.h. ausgänge mit 0 leuchten; evtl leuchten auch eingänge ohne 
aktivierte pull-ups (kann ich gerade nicht genau sagen.

d.h.
1
ldi r16, 0xFF   
2
r16
3
out DDRB, r16 
4
   
5
ldi r16, 0x00
6
out DDRD, r16
7

8
ldi r16, 0xFF       ;An allen Pins vom Port D die Pullup-Widerstände
9
out PORTD, r16 
10

11
loop:
12
    in r16, PIND  ;Anliegende Werte über Taster nach r16 einlesen
13
    out PORTB, r16
14
    rjmp loop

da nun alle angeschlossenen LED's tatsächlich auch ein richtiger ausgang 
sind und alle nicht betätigten taster der korrespondierenden LED eine 1 
liefern sollten die alle aus sein.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 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.