www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Timing Simulation eines ATmega48


Autor: DurinV (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Leute,

ich habe mit dem GCC Compiler ein Programm geschrieben und wollte nun
gerne wissen wie lange der ATmega48 mit dem Internen 8MHz Quarz (bitte
korrigiert mich wenn das falsch ist) für dieses Prog benötigt.
Nun zu meiner eigentlichen frage:
Gibt es im AVR-Studio eine Möglichkeit (oder mit dem GCC-Compiler) sich
ein timing Diagramm/Tabelle widergeben zu lassen?

Gruß
   DurinV

Autor: ¹²³ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein, du kannst dir aber die Anzahl der Takte und die Zeit anzeigen
lassen, die z. B. eine bestimmte Funktion benötigt. Ist glaube ich
links bei CPU :)

Autor: Cathrel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das AVR Studio hat eine Stopuhr mit dieser kann die Zeit vom einten
Breakpoint zum anderen gemessen werden. Den Takt den zur Messung
verwendet werden soll kannst du unter Debug/Simulator Options
einstellen. Mit F9 kannst du Breakpoints setzen. Mit F5 das Programm
laufen lassen. Die gemessene Zeit kann im Tab I/O bei Processor(auf
Plus klicken) Stop Watch abgelesen werden. Nicht vergessen vor der
Messung die Stop Watch mit dem doppelklick auf eben jenes Wort auf Null
zu stellen.

Autor: DurinV (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Leute,

Danke schon mal. Nun habe ich nur noch das Problem, das mein programm
auf das setzten von ports wartet. Gibt es vileicht auch hier eine
möglichkeit dies zu Simulieren? Wenn ja könntet ihr das vileicht etwas
ausfühlicher beschreiben (ungefähr so ausfühlich wie schon die Antwort
auf das Ablesen der Simulationszeit).

Gruß
   DurinV

Autor: ¹²³ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
#define DEBUG

...

int WarteAufPort(void)
{
   #ifdef DEBUG
      return 1;
   #elseif
      while(!BitIsSet(PIND,1));
      return 1;
   #endif
}

Ich denke, es ist klar, oder? Also wenn DEBUG definiert ist, tust du
einfach so, als ob jetzt z. B. PIND.1 gesetzt ist. Die Funktion (hier
nur als Beispiel) liefert eine 1 zurück. Ansonsten, wenn DEBUG nicht
definiert ist, wartet die Funktion eben so lange, bis PIND.1 auf 1 geht
und liefert erst dann den Wert1 zurück.

Autor: Cathrel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im I/O Tab siehst du noch einen weiteren Baum mit dem Namen "I/O [dein
Prozessor)]".
In diesem befinden sich die Ports, wenn du diese öffnest siehst du
PORTX, DDRX, PINX (X ist der PORT). Dort siehst du Felder, setzt du in
diesen das Häkchen ist das betreffende Bit gesetzt, sonst nicht.

Autor: DurinV (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mal gehört, das es bei dem AVR-Studio eine möglichkeit gibt,
eine Datei bei der Simulation mit anzugeben, die die Ports überwacht.
Wäre es nicht auch damit möglich die Ports so zu definieren um eine
Simulation ohne das manuelle setzten der Ports zu ermöglich. sonst
müßte ich auf die Variante von ¹²³ zurückgreifen was mir aber meine
timing simulation verfälscht.

DurinV

Autor: Cathrel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, dies ist möglich mit einem Stimuli-File. Dieses musst du auch bei
den Simulatoroptions angeben.

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.