CTC Atiny 2313

Gast #3289139
Lesenswert?
• ▲
▼
Hallo,

ich habe folgendes Problem mit dem CTC beim Atiny 2313:

Ich möchte mir am Pin OC0A (PB2) eine Frequenz erzeugen. Dazu habe ich 
den Timer 0 wie folgt initalisiert:

void TIMER0_Init(void)
{
DDRB = 0xFF;        // B als Ausgang
TCCR0A = ((1<<COM0A0));      // Auf Match OCR0A  toggle
OCR0A = 0xF1;        // Match OC0A auf dec39 - hex27
TCCR0A = (1<<WGM01);
TCCR0B = (1<<CS01) | (1<<CS00);    // Timer start, N = 64

TIMSK |= (1<<OCIE0A);      // Interrupts aus Overflow erlauben
}


Softwareseitig funktioniert das ganze bereits ganz gut - wenn ich den 
Timerwert auslese liegt dieser in den Bereichen, wo er sein sollte.
Nur Hardwareseitig kann ich keine Frequenz am Ausgang messen.

Habe ich ein Register noch nicht richtig eingestellt? Wo könnte das 
Problem liegen?

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.