Phasenkorrekte PWM

OP #3075742
Lesenswert?

Hallo,

ich möchte mittels phasenkorrekter PWM ein Signal am Pin OC1A (PD2) 
erzeugen. MCU = 90PWM316 @ 8MHz.
Den TOP-Wert speichere in das ICR Register und den compare match setze 
ich mit OCR1A.

Aber es passiert nichts am OC1A Ausgang und ich finde den Fehler nicht!
1
#include <avr/io.h>
2

3
int main(void)
4
{
5
  DDRD  |= (1<<PD2);  // OC1A = output
6
  
7
  ICR1  = 10000;    // Top Value = 10000
8
  OCR1A  = 5000;      // Compare Match bei 5000
9

10
  TCCR1A  = (1 << COM1A1) + (1 << WGM11);
11
  TCCR1B  = (1 << WGM13) + (1 << CS11);
12
  
13
  while(1)
14
  {
15
    asm ("NOP");  // Nichts tun
16
  }
17
}

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren