Servus
Wiedermal ich mit einer eigentlich einfachen Frage. Ich möchte hier klare Antworten sodass man das ganze dann in das Wiki stellen kann. Grund: Weder bei µC.net noch hier findet sich ein solcher Artikel und ich denke für den ein oder anderen könnte das Interessant sein.
Nehmen wir mal eine verschachtelte Schleife aus 3 Zählern. Dann ist die Gesamtzeit am Ende, wenn ich mich nich Täusche, die dritte Wurzel aus den Zylklen mal der Taktzeit des Systems (1/Systemfreq.). Richtig/Falsch?
Bei dieser Schleife
aus dem Musterprogramm kommme ich aufCode:delay: ; Warte Schleife, Verschachteltes ldi zaehl3,0x8 ; Incrementieren von 3 Zaehlern del2: ldi zaehl1,0xFF del: ldi zaehl2,0xFF del1: dec zaehl2 brne del1 dec zaehl1 brne del dec zaehl3 brne del2 ret
Problem: Ich sitz hier vorm PC wie ein Ochse und es tut sich, genua, nix. Er zählt die schleife und zählt und zählt und ... ja wie der Duracell-Hase ...Code:0x08 = 8 FF = 255 FF = 255 => Cycles = 8*255*255 = 520200 _______ => t=³-\520200 * 1/4MHz = 20,1µs
Also, stimmt die Berechnung und die Simulation schlägt mir ein schnippchen oder steh ich auf der Leitung?
BTW: Ich möchte das Tool aus dem Internet nicht nutzen! Diese Warteschleifen sind fürn Po, wofür gibts Timer, es geht mir nur um die Berechnung.
Grüße







Zitieren
Lesezeichen