-
folgendes habe ich gerechnet:
der prozessor arbeitet mit 8.000.000 takten pro sekunde. bei einem prescaler von 1 wäre also die zeit zwischen zwei takten 1sec/8000000 = 125 nanosec.
der interrupt wird generiert wenn der timer überläuft, also von 255 wieder auf 0 springt. das geschieht alle 256 zähleinheiten; also 125 ns * 32 = 32µs.
wird der prescaler aktiviert, wird der counter nur alle [prescaler] takte erhöht. mit einem prescaler von 1024 würde der counter also nur mit einem 1024stel der geschwindigkeit hchzählen. wir hätten also zwischen zwei interrupts
32µs * 1024 = 32,768 millisec.
-
Ist aber auch nicht gerade die Welt ...
Aber dazu gibt es ja den Trick um aus den 8-Bit Timer einen 16-Bit Timer zu machen ...
-
da brauchts keinen trick. entweder man nimmt direkt den 16bit timer der hardwaremäßig vorhanden ist, oder man zählt eine vriable in der interruptroutine. dann kann man beliebige verzögerungen erreichen.
-
Und wie sieht es aus wenn man noch zustätzliche den PWM nutzen möchte?
Dann geht das doch nicht oder?
-
hmm.. man kann die hardware-pwm nutzen. oder man programmiert eine software-pwm... was meinst du?
-
Ich habe an die Hardware-PWM von Timer1 gedacht ... ;)
-
tja... und wo ist das problem dabei? :D
-
Wie lasse ich den mit dem Timer0 zusammenlaufen?
Siehe Klick ...
Da habe ich ja das Problem ... :(