Hallo oberallgeier,
wenn ich das Fuse Bit CKDIV8 entferne wird also der CPU- Takt nicht mehr vorgeteilt und ich bekomme 8 statt 1MHz???
ok das klingt vernümpftig, aber ich hatte die Uhr ja bereits fertig und am laufen mit einem 1MHz.
allerdings war sie zu ungenau. nach 5 Stunden waren es schon 3-4min die sie nach ging.
Wäre es genauer wenn ich 8MHz nutze? Also statt 1000Überläufe pro Sekunde 8000.Code:8 Bit Timer CTC Modus aktivieren--------------------------------- TCCR0A |= (1<<WGM01); TCCR0B |= (1<<CS01); // im TCCR0B Register, Vorteiler 8 setzen OCR0A = 125; // Überlaufwert festlegen // 1.000.000Hz/8=125.000, 125.000Hz/125=1.000Hz, T=1/f = 1/1000Hz =0,001 Sekunden // Beim erreichen von 125 wird ISR(TIM0_COMPA_vect)ausgeführt, und somit die Variable "millisekunden" um 1 erhöt TIMSK0 = (1<<OCIE0A); // Interrupfunktion einschalten sei();
Gruß Chris







Zitieren


Lesezeichen