Witam
Chciałbym skorzystać z trzech dostępnych w Atmedze328P liczników do generowania 6 niezależnych sygnałów PWM do sterowania diodami LED.
Napisałem program ale w symulatorze nie działa on zgodnie z oczekiwaniami i co gorszę działa niezgodnie z notą katalogową atmegi.
Czy jest błąd w moim kodzie czy jest błąd w nocie katalogowej ? Może jest jeszcze jakiś bug w symulatorze, używam AVR Studio 4.18.
Kod przedstawiam poniżej:
Opis moich problemów:
- licznik 0 działa bez zarzutu
, liczy do max 255 i przy odpowiedniej wartości rejestru porownań ustawia wyjścia
- licznik 1 liczy do wartości 255 a następnie zamiast się zerować liczy w dół, wyjścia ustawia
- licznik 2 zlicza do wartości 255 ale nie ustawia odpowiednich sygnałów na wyjścia przy odpowiedniej wartości rejestru porowań, ustawia tylko flagę przerwania
Czy może o czym zapomniałem ?
Chyba, ze całość jest "nieodpowiednia" i macie inny pomysł na sterowania 6-cioma diodami LED?
Dzięki za uwagi
mumin_80
Chciałbym skorzystać z trzech dostępnych w Atmedze328P liczników do generowania 6 niezależnych sygnałów PWM do sterowania diodami LED.
Napisałem program ale w symulatorze nie działa on zgodnie z oczekiwaniami i co gorszę działa niezgodnie z notą katalogową atmegi.
Czy jest błąd w moim kodzie czy jest błąd w nocie katalogowej ? Może jest jeszcze jakiś bug w symulatorze, używam AVR Studio 4.18.
Kod przedstawiam poniżej:
Kod: C / C++
Opis moich problemów:
- licznik 0 działa bez zarzutu
- licznik 1 liczy do wartości 255 a następnie zamiast się zerować liczy w dół, wyjścia ustawia
- licznik 2 zlicza do wartości 255 ale nie ustawia odpowiednich sygnałów na wyjścia przy odpowiedniej wartości rejestru porowań, ustawia tylko flagę przerwania
Czy może o czym zapomniałem ?
Chyba, ze całość jest "nieodpowiednia" i macie inny pomysł na sterowania 6-cioma diodami LED?
Dzięki za uwagi
mumin_80
