"$" das ist hexadezimal. $42 ==> 4*16^^1 + 2*16^^0 ==> dez. 66
Bei solchen Schleifen werden Maschinenzyklen verbraten.
Bei 4 MHZ sollten es für 50 µS also 50*4 --> 200 Zyklen sein.
Und dazu mußt du du Zyklen jedes Befehls in der schleife zusammenrechnen
LDI temp1, $42 ---> 1 Zyk.
delay50uS:
DEC temp1 ---> 1 Zyk.
BRNE delay50uS springen 2 Zyk, nicht springen 1 Zyk
d.h. 1 * 2 + (temp1-1) * 3
insgesamt also
1 + 2 + 65 * 3 --> 197 Zyklen
FÜr 12 MHZ brauchst du offenbar 3-mal soviele Zyklen. Also, Bleistift raus und rechnen![]()
Lesezeichen