AtmelStudio 6 (6.1.2440 - beta) debugging Problem

OP #3121850
Lesenswert?
• ▲
▼
Hallo,

ich bin seit kurzem daran, mich mit der Assemblerprogrammierung eines 
ATmega8A auseinanderzusetzen.

Ich habe mir zunächst zu Lernzwecken das AtmelStudio Version 6.1.2440 - 
beta auf meinen Rechner (XP, SP3) installiert.

Nun scheitere ich bei einer "Pipifax-Simulation".

Ich habe folgenden Code:

      .EQU NULL = 0

      in   r16,PINB       ; Zustand des Eingabeports lesen
      andi r16,0b00000001 ; oder $01 oder 0x01 oder 1 << PIND0
      breq NULL

Als Simulator verwende ich den internen Simulator des AtmelStudios.
Ich starte mit F10 (debugging, stepover)
Der Simulator hält automatisch am ersten Befehl.
Ich setze jetzt im I/O-View sämtliche Bits an PINB.
Danach betätige ich erneut F10. Der Programmcounter zeigt nun 2 Zyklen 
an.
Im Register r16 steht immer noch 0x00.
(Ich habe einen entsprechenden Screenshot mit angefügt und 
dementsprechende Markierungen im Bild vorgenommen.)

Warum ist das so? Habe ich irgendwas nicht berücksichtigt?

Wenn ich mit F10 weiter steppe, gelange ich wieder an den Anfang des 
Programms und der Wert von PINB wird auch beim weitersteppen richtig ins 
Register r16 übertragen.

Mir tun sich hier ein paar ??? auf....

Danke für konstruktive Beiträge in voraus!

Gruß,
Bernd
Angehängte Dateien:
OP #3122482
Lesenswert?
• ▲
▼
@ Stefan Frings

Vielen Dank für Deine schnelle Antwort. Das hat mir sehr weitergeholfen.
Ich habe es - dank Deines Hinweises auf das Datenblatt - ebenfalls im 
Datenblatt des ATmega8A auf den Seite 50-53 recherchieren können.

P.S.: Mein Codebeispiel war aus dem Fachbuch "Mikrocomputertechnik mit 
Controllern der Atmel AVR-SISC-Familie" von Günter Schmitt.

Leider wird im Buch direkt in Assembler ohne Hinweis auf das Datenblatt 
eingestiegen. Dadurch ist mir das passiert :-(.

Im AVR-Tutorial habe ich auch noch einen Abschnitt zur Thematik 
gefunden: 
http://www.mikrocontroller.net/articles/AVR-Tutorial:_IO-Grundlagen#Eingabe

Gruß,
Bernd

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.