Gast
#3334742
Hallo, folgendes Programm toggelt aus dem Interrupt heraus in periodischen Abständen PB1.
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 | |
So weit funktioniert es. Was mich aber wundert: woher weiß der Counter, wie oft er durchlaufen soll, bevor ein Match vorliegt und das IRQ aufgerufen wird? Hätte gedacht, dass man im OCR0A-Register einen Wert ablegen müsste. Wenn ich es richtig sehe (und richtig gemessen und gerechnet habe), wird die Interrupt-Routine alle 256 Takte aufgerufen (wenn Vorteiler = 1). Was muss man machen, damit das IRQ z.B. alle 100 Takte aufgerufen wird ? Nachtrag: habe versuchsweise auch schon in die OCR0A/OCR0B-Register verschiedene Werte zwischen 10 und 240 geschrieben, das ändert aber leider nichts an der Ausgabefrequenz an Pin B1.