ret springt nicht zurück

OP #2865922
Lesenswert?
• ▲
▼
Hallo zusammen!

Ich sitze seit zwei Stunden vor meinem Quellcode und wundere mich, warum 
er nicht das tut, was er soll (wie das für Code so üblich ist ;)

Aufgefallen ist mir, dass das ret scheinbar nicht zurückspringt.
Hier ein Minimalbeispiel:
1
.include "m8def.inc"         ; Definitionsdatei für den Prozessortyp einbinden
2

3
.org 0x0000
4
    ldi r16, 0xFF       ; 
5
    out DDRB, r16       ; Port B als Ausgang
6

7
    ldi r16, 0xFF       ; 
8
    out DDRD, r16       ; Port D als Ausgang
9
main:  
10
    ldi r16, 0b11111111 ; grüne LED an
11
    out PORTB, r16      ; 
12
    
13
    rcall led
14
    
15
    ldi r16, 0b11111111 ; rote led an
16
    out PORTD, r16      ;
17
      
18
ende:   rjmp ende           ; Endlosschleife 
19

20
led:
21
  ldi r16, 0b00001111 ; gelbe LED an (rote noch aus)
22
  out PORTD, r16 
23
  ret

Als HW ist eine grüne LED an PB(2), eine gelbe LED an PD(2) und eine 
rote LED an PD(4, also das höhere Nibble).
Der Code soll die grüne, dann die gelbe und schließlich die rote LED 
anschalten.
Wenn ich den Code ausführe, leuchten aber nur die grüne und die gelbe 
LED.
Die Verbindungen sind alle überprüft und mein µC ist ein ATMega8.
Die Wahl der Pins ist bei mir irrelevant.

Habe ich irgendetwas richtig dummes übersehen oder funktioniert das so 
bei euch?

Beste Grüße
Johannes S.

Antwort schreiben

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