Gast
#1142279
Hallo Mikrocontroller-Gemeinde, ich bin gerade auf der Suche nach einem vermutlich banalen Fehler. GGf. könnt ihr mir ja weiter helfen. Ich versuche derweil für eine weitere Funktion einen Timer einzubinden. Hierzu gebe ich zum testen eine LED zum Blinken am PORTC aus. Der Code sieht aus wie folgt:
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 | |
41 | |
42 | |
43 | |
44 | |
45 | |
46 | |
47 | |
48 | |
49 | |
Eigentlich sollte ja nach 1s der CompareValue erreicht sein und die LED entsprechend blinken. Dies macht sie ja auch! Allerdings ändere ich den //Vergleichswert OCR1AH = (QRGFREQ *1000) >>8; // 10ms OCR1AL = (QRGFREQ *1000) & 0xff; // 10ms auf andere Werte so ergibt sich die gleiche Geschwindigkeit des Taktes der LED. Das heißt also, dass der Compare-Wert woandersraus gebildet wird? (Forum etc schon nachgestöbert!) Ggf. banale Lösung ?? Danke schonmal