Forum: Mikrocontroller und Digitale Elektronik Kurze Frage zu einer Zählschleife


von Max Z. (max1)


Lesenswert?

Hallo,

ich habe gerade versucht, die Zählschleife w15ms von SF-Hühn 
nachzuzählen:

http://rafb.net/p/SPSMeK51.html

Jedoch komme ich bei meiner Zählung auf 64,97.
Das Ganze läuft bei 4 MHz  auf einem ATtiny2313.

Meine Zählung:

- Ist es nicht richtig, dass die innere Schleife (Low-Zähler) bei ihrem 
ersten Durchlauf 728 Clocks benötigt?
243 mal dec, 242 brne mit Sprung und einmal ohne Sprung. Damit käme ich 
auf 728 Clocks.

- Bei jedem weiteren Durchlauf dieser Schleife (Low-Zähler wird ja von 
High-Zähler wieder 'aufgerufen') braucht sie nach meiner Rechnung 767 
Clocks, denn 'delayc' wird dann ja wieder durch dec auf 255 gesetzt. 
Macht 256 Mal ret, + wieder 255 brne mit Sprung und einmal ohne.

- Die äußere Schleife (High-Zähler) macht 79 Mal dec, 78 brne mit Sprung 
und einmal ohne, und ruft dabei jedesmal wieder den Low-Zähler auf, was 
79*767 Clocks entspräche.


Dazu habe ich noch die Clocks für die Variableninitialisierung und den 
ret gezählt, und komme auf 4000000 / 61566 = 64,97.

Vielleicht kann mir jemand helfen und findet meinen Denkfehler :)

Vielen Dank!

Cheers!

max

von Jörg X. (Gast)


Lesenswert?

> 4000000 / 61566 = 64,97.

Probier's so:
61566 [Takte<=>1] / 4000000 [Hz<=>1/s] = 0,0153915 [s]
passt!
(Die Einheit in [])
hth. Jörg

von Max Z. (max1)


Lesenswert?

Arg. Ich Pfosten!

Vielen Lieben Dank!

Das nennt man echt mal auf der Leitung sitzen ;)

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.