CTC-Rätsel vs. AVR-Tutorial

Gast #4027548
Lesenswert?
• ▲
▼
Liebe Experten,

ich habe (dachte ich) das (Uhren-CTC-)Tutorial präzise nachgeahmt:

ldi  temp, high(60000 - 1) ; T1 INIT (oberer Anschlag bei 60.000 => 1 IR 
alle 10ms)
out  OCR1AH, temp
ldi  temp, low(60000 - 1)  ; T1 INIT (oberer Anschlag bei 60.000)
out  OCR1AL, temp
ldi  temp, (1 << WGM12) | (1 << CS10)  ; T1 CTC Modus an, Vorteiler auf 
1
out  TCCR1B, temp
ldi  temp, 1 << OCIE1A     ; T1 Interrupt bei Compare
out  TIMSK, temp

Mit meinem 6MHz -Quartz an einem ATmega8-16PU nahm ich an, 6MHz/60.000 
gibt 100 Impulse pro Sekunde => alle 10ms einen Wakeup. Das tut er aber 
nicht, er wacht viel seltener auf. Sobald ich den CTC auf 10.000 statt 
auf 60.000 stelle, funktioniert alles, wie es soll (also Wakeup alle 
10ms).

Wo kommt dieser Faktor 6 her?
Was habe ich falsch verstanden?

Danke und Grüße
Frank
Gast #4037746
Lesenswert?
• ▲
▼
Route 66 schrieb:

> Wenn hier jeder Anfänger für fehlerhafte Fuses (CKSEL, JTAG, CKDIV8 usw.
> usw.) in eine Kasse einzahlen würde, könnte man davon bald Griechenland
> retten.

Der Spruch gefällt mir.

> Mach Dir deshalb also keine Vorwürfe.

Doch, das sollte er trotzdem. Es steht doch, verdammt nochmal, alles im 
Datenblatt. Auch einem Anfänger ist es durchaus zuzumuten, das Ding zu 
lesen, bevor er den Controller benutzt, den es beschreibt.

Ja klar, bei geringer Lesegeschwindigkeit und lausigen 
Englischkenntnissen können da schon mal etliche Abende ziemlich 
nervtötender Lektüre zusammenkommen, das ist klar. Aber nur so kann man 
ernsthaft einsteigen, selbst wenn es nur ein Hobby sein soll.

Ein Hobby soll vor allem Spaß machen und das tut es einfach nicht, wenn 
man dauernd wegen mangelnder Grundkenntnisse auf die Schnauze fällt. Da 
ist die Hobbyaufgabe schon sozusagen "vorprogrammiert".

Letztlich ist das genauso wie z.B. beim Modellflugzeugbau. Auch dort 
wird man unweigerlich auf die Schnauze fallen, wenn man nicht wenigstens 
die Grundlagen der Aerodynamik beherrscht und eine ganze Menge 
handwerklicher Fähigkeiten.

Der Unterschied ist nur: Modellbauanfänger kommen nicht auf die Idee zu 
fragen, warum ihr Werk nicht fliegt, solange noch keine Tragflächen dran 
sind, weil sie nicht in der Lage waren, welche anzufertigen. Sie wissen 
dann von alleine, daß da noch was Wesentliches fehlt...

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.