Witam
Ostatnio próbując ustawić timer0 natknąłem się na pewną dziwną sytuację. Jeżeli wywołane zostanie normalne przerwanie (tzn. bez opóźniej wew. funkcji obsługi przerwania) to nie działa. Znaczy się sam program się kompiluje i działa tylko wogóle nie zapala się ale jeśli wprowadzę opóźnienie powyżej 70ms to wszystko jest ok. Nie znam się jeszcze za bardzo na programowaniu avr-ów ale wydaje mi się że w przerwaniach nie powinno się używać funkcji typu _delay_ms
Ta wersja kodu działa poprawnie, czyli obie diody się zapalają.
A ta, po zmniejszeniu opóźnienia, już nie. Zapala się tylko jedna dioda, zupełnie tak jak gdyby program nie wchodził wogóle do if-a.
Coś jest nie tak z kodem, ustawieniami uC czy może tak już po prostu musi być?
Ostatnio próbując ustawić timer0 natknąłem się na pewną dziwną sytuację. Jeżeli wywołane zostanie normalne przerwanie (tzn. bez opóźniej wew. funkcji obsługi przerwania) to nie działa. Znaczy się sam program się kompiluje i działa tylko wogóle nie zapala się ale jeśli wprowadzę opóźnienie powyżej 70ms to wszystko jest ok. Nie znam się jeszcze za bardzo na programowaniu avr-ów ale wydaje mi się że w przerwaniach nie powinno się używać funkcji typu _delay_ms
Ta wersja kodu działa poprawnie, czyli obie diody się zapalają.
Kod: C / C++
A ta, po zmniejszeniu opóźnienia, już nie. Zapala się tylko jedna dioda, zupełnie tak jak gdyby program nie wchodził wogóle do if-a.
Kod: C / C++
Coś jest nie tak z kodem, ustawieniami uC czy może tak już po prostu musi być?
