danko91 napisał(a):
Ale Ty nigdzie nie masz przypisanej wartości do pwm1 i pwm2?
Wówczas wypełnienie jest równe 0
Dokładnie tak, przecież pwm1 i pwm2 to zmienne globalne, które są zainicjowane wartośćią 0.
Używasz timera 8 bitowego, więc te dwa pwm'y mogą przyjąć wartośći od 0 (diody nie świecą) do 255(maksymalna jasność). Oczywiście kwestia jak masz podłączone diody LED czy anodmi czy katodami do uC. Jeśli odwrotnie dla wartości 0 będą świeciły maksymalnie, a dla 255 nie będą świeciły.
Oczywiście jak pisałem wyżej wektor przerwania powinien wyglądać tak:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Poniżej masz przykładowy program do naprzemiennego zapalania i gaszenia tych diod.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Jak widzisz w pętli głównej programu napisałem dwie pętle for, które zmieniają wartości pwm1 i pwm2, pierwsza od 0 do 255, a druga od 255 do 0. Dzięki temu diody będą się naprzemian zapalały i gasły.
Przetestuj sobie i daj znać czy jest to dla ciebie jasne.