Forum: Mikrocontroller und Digitale Elektronik Simulieren des Atmega8 mit AVR-Studio


von Myosotis (Gast)


Lesenswert?

Hi!
Ich will ds einfache Programm aus dem Turtorial mit den 2 Leds im
Avrstudio simulieren. Wie kann ich denn erkennen an welchen Pins etwas
ausgegeben wird, d.h. ob in der Simulation die Leds leuchten oder
nicht?
Danke!

von Frank Linde (Gast)


Lesenswert?

Beim Studio 4.08 kannst Du im Workspace auf I/O klicken, dort auf das
Pluszeichen neben I/O und dann auf das Pluszeichen neben dem
entsprechenden Port klicken. Rechts siehst Du dann die entsprechenden
Bits mit ihren Zuständen.

Gruß, Frank

von Myosotis (Gast)


Lesenswert?

Danke, soweit hab ichs sogar gefunden, aber die Bits sind alle leere
Kästchen.
Habe diesen Programm eingegeben :

.include "4433def.inc"       ;Definitionsdatei einbinden, ggf. durch
                             ;2333def.inc ersetzen

         ldi r16, 0xFF       ;0xFF ins Arbeitsregister r16 laden
         out DDRB, r16       ;Inhalt von r16 ins IO-Register DDRB
ausgeben

         ldi r16, 0b11111100 ;0b11111100 in r16 laden
         out PORTB, r16      ;r16 ins IO-Register PORTB ausgeben

ende:    rjmp ende           ;Sprung zur Marke "ende" ->
Endlosschleife


Vom Tutorial, da müßten doch eigentlich zwei Bits aktiv sein, also
schwarze Kästchen oder so...?

Gruß Myo

von Frank Linde (Gast)


Lesenswert?

Das Programm ist korrekt. Allerdings sind nicht zwei Bits aktiv, sondern
sechs (Bits 2 bis 7). Kann es sein, dass Du das Programm nur mit
"Run(F5)" laufen lässt? In diesem Fall wird die Anzeige nicht
aktualisiert. Wenn Du dann auf "Stop Debugging (Strg+Alt+F5)
drückst", wird die Anzeige aber auf den aktuellen Stand gebracht.

Gruß, Frank

von Frank Linde (Gast)


Lesenswert?

... oder eben Einzelschrittbetrieb, dann wird nach jedem Schritt die
Anzeige aktualisiert.

Gruß, Frank

von Frank Linde (Gast)


Lesenswert?

>> Wenn Du dann auf "Stop Debugging (Strg+Alt+F5)
drückst", wird die Anzeige aber auf den aktuellen Stand gebracht.

Sorry, das ist natürlich Quark! Ich meinte den Knopf "Break
(Strg+F5)". Bei dem anderen Knopf wird die Anzeige abgeschaltet, da
sieht man überhaupt nichts mehr. Muß dringend 'was essen...  ;-)

Gruß, Frank

von Mike Schultz (Gast)


Lesenswert?

Ich weiß nicht, ob es was ausmacht, aber die Zeile

.include "4433def.inc

würde ich gegen die für den Mega8 tauschen.

.include "m8def.inc"

Und sonst halt das Programm halt in Einzelschritten durchlaufen,
dann sollte die Anzeige auch aktualsiert werden.


MfG Mike

von Frank Linde (Gast)


Lesenswert?

@Mike:

In diesem besonderen Fall ist das bedeutungslos, aber grundsätzlich
hast Du natürlich Recht.

Gruß, Frank

von Myosotis (Gast)


Lesenswert?

Hat geklappt! Danke!

Aber ich dachte, das wäre die richtige .inc, steht doch im Tutorial
unter dem Link zum Download...?

von Fiffi (Gast)


Lesenswert?

Hallo Frank,

>Rechts siehst Du dann die entsprechenden Bits mit ihren Zuständen.

Wie kann ich den die Bits der Ports sehen ? Ich kann sie mir nur
Byte-weise ansehen.

Die Bits in anderen Registern (z.B. GIMSK) werden als Bits (Rechtecke)
angezeigt.


Vielen Dank für die Hilfe !

von Frank Linde (Gast)


Lesenswert?

Hallo Fiffi,

hast Du vielleicht eine ältere Version des AVRStudio? In der 4.08 beta
werden die Ports auch in der Bitdarstellung gezeigt. Oder mußte man das
irgendwo einstellen? Bin mir gerade nicht sicher und habe auch keinen
Zugang zum AVRStudio. Mach mal 'nen Rechtsklick auf den Port und guck,
ob da etwas passendes zu finden ist.

Gruß, Frank

von Fiffi (Gast)


Lesenswert?

Hallo Frank,

ich kann die Bits sehen ! Ich hatte das Fenster in X-Richtung zu klein
...

von Frank Linde (Gast)


Lesenswert?

Hihi, ja, oder so.  :-)

Gruß, Frank

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.