Gast
#2097664
Hi zusammen, folgende Situation: ich hab auf einem ATTiny24 den 16-bit Timer (Timer/Counter1) im "Fast-PWM 10-bit"-Modus laufen (TOP = 3FFF). Dabei läuft der Timer mit clk/8 = 1MHz wobei clk = 8MHz (interner RC-Oszillator). Im Overflow-interrupt des selben Timers wird ein Counter (static uint8_t) gezählt, welcher von 0 bis 64 zählt. Ist der Zähler kleiner 32 wird die LED ausgemacht, sonst an. Wenn ich mich nicht verrechne, sollte sich also eine Blinkfrequenz von ca. 1Hz ergeben. Ich messe aber 15Hz... Wo kann der Hund begraben sein? Beim weiteren testen und messen (OC1A-Pin) stelle ich nun fest, dass ich hier ebenfalls eine Periodendauer von nur ca. 1ms habe?! Der Timer läuft also irgendwie zu schnell, nur warum? hat jemand ne Idee? Den Prescaler hab ich eigentlich auch schon überprüft und schneller als 8MHz kann der interne Oszillator ja nicht! Ich hänge wirklich fest. Bitte helft mir auf die Sprünge. lg Martin PS: Mein Code (minimal gekürzt ums übersichtlicher zu halten):
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
38 | |
39 | |
40 | |