Skocz do zawartości

Pwm nie rusza w pętli.


komabra

Pomocna odpowiedź

Cześć.

Mam mały problem. A mianowicie. Bawię się w sterowanie diodami za pomocą fast pwm na timerze0.

Oto kod programu:

#include<avr/io.h>
#include<util/delay.h>

int main(void)
{
DDRB |= (1<<PB3);
uint8_t j;

TCCR0 |= (1<<WGM01) | (1<<WGM00); //fast pwm
TCCR0 |= (1<<COM01) | (1<<COM00) ; //
TCCR0 |= (1<<CS00);

OCR0 = 220;
_delay_ms(100);
OCR0=10;


while(1)
{
		for(j=5;j<250;j++)
			{
				j=OCR0;
				_delay_ms(50);
			}

}

Nie mogę zrozumieć dlaczego program nie chce wejść w pętle for, aby powoli rozjaśniać diodę. W początkowej fazie, gdy najpierw OCR0=220, a potem 10, wszystko działa.

Siedzę nad tym i wciąż nie mogę ruszyć dalej.

Dzięki!

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.