Atmega88 Timer2 mit externem Takt

Gast #1418050
Hallo,
das Programm soll am PB0 ein Rechtecksignal ausgeben, Der Takt dazu wird 
mit einem Frequenzgenerator auf PB6 eingespeist. Ich habe keine Ahnung 
wo mein Fehler liegt. Ich benutze AVR Studio 4, der build läuft ohne 
Warnungen durch. Kann jemand helfen?
1
#include <avr/io.h>
2
#include <avr/interrupt.h>
3
#include <avr/sleep.h>
4

5
#define F_CPU 1000000
6

7
int main (void)                   //Benutzt Timer2, hat 8Bit
8
{ 
9
   DDRB |= (1 << PB0);                // LED an Pin12
10
  DDRB |= (0<<PB6);                // PB6 Eingang
11
   TCCR2B |= (1 << WGM12);               // Timer 2 in CTC mode
12
   ASSR |= (1<<AS2);                 // Ext. Taktquelle an TOSC1
13
   TIMSK2 |= (1 << OCIE1A);             // Enable CTC interrupt
14
   sei();                       // Enable global interrupts
15
  TCCR2B |= ((0<<CS20)|(0<<CS21)|(1<<CS22));    // Prescaler  31,2Hz
16
  OCR2A   = 64;                   // Vergleichswert
17
for (;;) 
18
   {
19
           set_sleep_mode(SLEEP_MODE_PWR_SAVE);
20
        sleep_mode();                         // in den Schlafmodus wechseln
21
    }
22
    }
23

24
ISR(TIMER2_COMPA_vect) 
25
{ 
26
   PORTB ^= (1 << 0);                 // Toggle Pin12
27
}
Gregor schrieb:
> Hallo,
> das Programm soll am PB0 ein Rechtecksignal ausgeben, Der Takt dazu wird
> mit einem Frequenzgenerator auf PB6 eingespeist. Ich habe keine Ahnung
> wo mein Fehler liegt. Ich benutze AVR Studio 4, der build läuft ohne
> Warnungen durch. Kann jemand helfen?

Und dein Problem lautet wie?

>
1
//[...]
2
>

Könnte es sein, dass der Watchdog läuft?
Was passiert, wenn du den Schlafmodus weglässt?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.