Siemka mam problem z pwm
ustawiam tak aby sygnal pwm byl na dwoch pinach tzn PD3 oraz PB3
Tylko na PB3 jest sygnal.
Zmienilem procka i nadal to samo
EDIT:
Po przypisaniu wartosci do rejestru OCR2A = 50;
PWM zaczał działać - pytanie tylko dlaczego skoro do OC2B przypisany jest rejestr porównawczy OCR2B
Po dalszej analizie wywnioskowałem, że aby korzystać z OCR2B, rejestr OCR2A musi byc wiekszy lub równy OCR2B.
ustawiam tak aby sygnal pwm byl na dwoch pinach tzn PD3 oraz PB3
Tylko na PB3 jest sygnal.
#include <avr/io.h>
#include <avr/interrupt.h>
int main(void)
{
DDRD = ( 1 << PD3 );
DDRB = ( 1 << PB3 );
OCR2B = 50;
TCCR2A = 0;
TCCR2B = 0;
TCCR2A |= (1 << COM2A0) | (1 << COM2B0);
TCCR2A |= (0 << WGM20) | (1 << WGM21);
TCCR2B |= (0 << WGM22);
TCCR2B |= (1 << CS20 );
/* Replace with your application code */
while (1)
{
}
}
Zmienilem procka i nadal to samo
EDIT:
Po przypisaniu wartosci do rejestru OCR2A = 50;
PWM zaczał działać - pytanie tylko dlaczego skoro do OC2B przypisany jest rejestr porównawczy OCR2B
Po dalszej analizie wywnioskowałem, że aby korzystać z OCR2B, rejestr OCR2A musi byc wiekszy lub równy OCR2B.