Ich benutze den mega8 mit einem 3.8684MHz quarz und habe eine sehr Zeitkritische asm-Schleife drin bei der ich genau wissen muss wie lange sie braucht. Im Datenblatt steht bei dem SBIC Befehl dass er 1/2/3 Takte benötigt. Wie soll ich das interpretieren??? Besten Dank!
ich bin mir grad nicht sicher, aber es hängt davon ab, was letztendlich passiert, so weit ich mich erinnern kann. Wenn nicht gesprungen wird, dann wird gleich die darauffolgende Anweisung durchgeführt, das braucht dann wohl nur 1 Takt. Wenn die nächste Anweisung übersprungen wird, dann hängt die Ausführungsdauer davon ab, was für ein Befehl folgt. Es gibt Befehle, die ein Wort (16 Bits) lang sind, aber auch welche die 2 Wörter lang sind (32Bits). Um letztere zu überspringen braucht es halt insgesamt 3 Takte. Aber nagel mich jetzt nicht darauf fest.
Hallo, steht in der Instruction Set Beschreibung: Cycles: 1 ifcondition is false(no skip) 2 if condition is true (skip is executed) and the instruction skipped is 1 word 3 if condition is true (skip is executed) and the instruction skipped is 2 words ´Das Dokument ist hier: http://www.atmel.com/dyn/products/other_docs.asp?family_id=607 zu fiden. Gruss Andreas
Im zweifel einfach im AVRStudio das entsprechende Code Stück im Debugger laufen lassen. Im I/O Tab im linken Fenster kann man dann unter Processor->Cycle Counter die angefallenen Taktzyklen ablesen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.