mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik MyAVR bzw Sisy Assembler-Anfänger


Autor: Max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

bin ein Anfänger und arbeite mit MyAVR und Sisy.

Gibt es bei SISY eine Funktion wo man den Quellcode Schritt für Schritt 
ablaufen lassen kann(Wie bei AVR Studio mit der F11)

Also online in das Programm rein schauen?

Hier ist der Code den ich teilweise aus dem Buch und teiweise selbst 
geschrieben habe.
Könnte mit einer erklären, wie es mit dem warten funktioniert?

inc r16       ; erhöht doch die Zahl um 1 die im Register 16 ist
aber wie geht es weiter?

Wäre echt nett

Gruß
Max

;Start, Power ON, Reset
main:  ldi  r16,lo8(RAMEND)
      out  SPL,r16
      ldi  r16,hi8(RAMEND)
      out  SPH,r16  ;init Stack
      ;Ausgänge
      ldi r16,0b11111111
      out DDRB, r16
      ;Eingänge
      cbi DDRD, 2
      cbi DDRD, 3
      ;Pull up
      ldi r16,0b00001100
      out PORTD, r16

      ldi r16,0b00000000
      ldi r17,0b00000000
      ldi r18,0b00000001


;----------------------------------------------------------------------- 
-
mainloop:  wdr

getKey:     in r24, PIND
            sbrs r24, 2
            rjmp schleife1
            sbrc r24, 3
            rjmp getKey
            rjmp schleife2

schleife1:  inc r16
            brne warte
            inc r17
            brne warte
            rol r18
            rjmp ausgabe
schleife2:  inc r16
            brne warte
            inc r17
            brne warte
            ror r18
            rjmp ausgabe


ausgabe:    out PORTB, r18
warte:      rjmp mainloop
;----------------------------------------------------------------------- 
-

Autor: Spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

brne warte: brne (Branch (if) not equal)-> Verzweige wenn <>Null

Nach 256 mal 'inc r16' ist r16 wieder Null (+ gesetzten Carryflag)
dann wird mit 'inc r17' weitergemacht, ansonsten Sprung nach 'warte'.

MfG Spess

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Gibt es bei SISY eine Funktion wo man den Quellcode Schritt für Schritt
> ablaufen lassen kann(Wie bei AVR Studio mit der F11)

Gibt es einen triftigen Grund, das kostenlose und ganz brauchbare 
AVR-Studio zu meiden???

...

Autor: AVR (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
;     16777215 Zyklen:
; -----------------------------
; warte 16777206 Zyklen:
          ldi  R17, $DE
WGLOOP0:  ldi  R18, $6E
WGLOOP1:  ldi  R19, $E4
WGLOOP2:  dec  R19
          brne WGLOOP2
          dec  R18
          brne WGLOOP1
          dec  R17
          brne WGLOOP0
; -----------------------------
; warte 9 Zyklen:
          ldi  R17, $03
WGLOOP3:  dec  R17
          brne WGLOOP3
; =============================

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.