Forum: Mikrocontroller und Digitale Elektronik laufzeiten mit avrstudio ermitteln.


von roboter-neuling (Gast)


Lesenswert?

hallo, ich möchte die laufzeiten von bestimmten codeabschnitten 
ermitteln.

wenn ich das jetzt simuliere, dauert das immer so lange bis die anzeige 
der zeiten erscheint.

gibt es schalthäkchen um die realsimulation auszuschalten und das man 
nur die errechnete zeit angezeigt bekommt von breakoint zu breakpoint?

von Jupp (Gast)


Lesenswert?

Leider nicht.

von Sven P. (Gast)


Lesenswert?

Das kannstu aber recht einfach auszählen, zumindest bei ASM. Die Zahl 
der Takte, die die einzelnen Instruktionen brauchen, sind immer gleich 
und stehen im Handbuch.

Schau dich evtl. auch mal nach Simulatoren wie etwa SIMULAVR um.

von AVRFan (Gast)


Lesenswert?

>gibt es schalthäkchen um die realsimulation auszuschalten und das man
>nur die errechnete zeit angezeigt bekommt von breakoint zu breakpoint?

Nein. Um die Zeit zu bestimmen, muss der Code simuliert werden.  Eine 
andere Möglichkeit gibt es nicht.  Wenn zwischen zwei Breakpoints durch 
Schleifenkonstruktionen hundert Millionen Instruktionen abgearbeitet 
werden, musst Du Dich wohl oder übel in Geduld üben.

von Kai G. (runtimeterror)


Lesenswert?

In Teilabschnitte zerlegen, einzeln vermessen und Schleifen 
hochrechnen... lohnt sich bei mir aber selten. Du testest aber nicht im 
Einzelschrittmodus, oder? Dass der ewig braucht ist ja klar.

Das AVR Studio gibt neben der Takte auch einen Timer aus (Taktrate muss 
dafür korrekt eingestellt sein).

von neuer (Gast)


Lesenswert?

....Du testest aber nicht im Einzelschrittmodus...

ich setze die breakpointer und gehe auf dem button "run" bzw f5 immer 
von punkt zu punkt, da lese ich die zeit ab und stelle zb wieder den 
zeitnehmer auf "0" und es geht wieder weiter.

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.