Forum: Mikrocontroller und Digitale Elektronik Zeitdauer eines Mikrocontollerbefehls???


von Bianca (Gast)


Lesenswert?

Hallo!
Wie lange dauert ein microcontroller Befehl bei einem Atmega16 mit 4kHz
Takt??

von TravelRec. (Gast)


Lesenswert?

Solange, wieviele Taktzyklen der Befehl braucht. Bei einem Befehl mit
einem Taktzyklus ist das in 0,25ms oder anders ausgedrückt: in 250µs
erledigt.

von Bianca (Gast)


Lesenswert?

ä wir haben 4MHz!
Wie finde ich heraus wieviel Taktzyklen ein Befehl hat??

von Wegstabenverbuchsler (Gast)


Lesenswert?

Das Datenblatt des Herstellers wäre schon mal ein erster Versuch ...

http://www.atmel.com/dyn/resources/prod_documents/doc2466.pdf

Geheimtim zum Montag: Seite 333 ist sehr interessant ...

von Wegstabenverbuchsler (Gast)


Lesenswert?

-m +p  (Buchstaben verwechselt G)

von Rolf Magnus (Gast)


Lesenswert?

Oder auch die Dokumentation zum Instruction Set. Da sind alle
Assembler-Befehler der AVR-Architektur nochmal aufgelistet und im
Detail erklärt.

von Wegstabenverbuchsler (Gast)


Lesenswert?

@Rolf
Oder auch "Dokumentation zum Instruction Set"

???? Hä?   Ist das was anderes als die Orginal Doku von Atmel (den Link
den ich oben gepasted habe) ?????

von Rolf Magnus (Gast)


Lesenswert?

Das, was du gepostet hast, ist das Datenblatt des ATmega16. Es gibt auch
eins über den AVR-Befehlssatz, wo wie gesagt jeder Befehl im Detail
erklärt wird. Siehe:
http://www.atmel.com/dyn/resources/prod_documents/doc0856.pdf

von Mathias M. (aragorn)


Lesenswert?

so weit ich weiß benötigt bei den avrs jeder befehl bis auf lds und sts
einen zyklus, die beiden benötigen 2.

bei 4 Mhz wären das dann 1/4Mhz = 0,25us

von Ivan der Schrecklichste (Gast)


Lesenswert?

>>so weit ich weiß benötigt bei den avrs jeder befehl bis auf lds und
>>sts einen zyklus, die beiden benötigen 2.

total falsch

z.B. ret und reti brauchen 4, die branch-Befehle entweder 1 oder 2;
sbi, cli auch 2 usw. usw.

steht wie gesagt alles im Dateblatt (weit hinten) oder im
AVR-Befehlssatz

von Simon Küppers (Gast)


Lesenswert?

mal von bedingten Sprüngen abgesehen..

Aber im Groben hast du schon recht. Beim Atmel sind viele Befehle, die
man ständig verwendet 1 Taktzyklus lang.

Die Dauer der Ausführung berechnet sich wie folgt:
t(s) = Takzyklen/Frequenz(Hz)

Also t = 1/4000000 = 0,00000025 Sekunden bei einem Zyklus und 4Mhz


PS:
t(ms) = Taktzyklen/Frequenz(kHz)
t(us) = Taktzyklen/Frequenz(Mhz)

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.