Witam.
Z definicji liczba instrukcji w obsłudze przerwania powinna być minimalna, by mogło się ono maksymalnie szybko wykonać.
Tymczasem w przypadku mojego programu liczba instrukcji w obsłudze przerwania była stosunkowo duża. By wybrnąć z tego problemu zamierzam w przerwaniu ustawić flagę która oznacza, że przerwanie zostało wygenerowane, natomiast w pętli programu głównego wykonać grupę instrukcji tylko raz (po wykonaniu się przerwania) i ustawić flagę na 0. Tym sposobem większość instrukcji znajdzie się w programie głównym a nie w obsłudze przerwania. Proszę o podzielenie się uwagami, czy takie działanie ma sens. Proszę o weryfikację tego rozumowania:
Dodam, że wykonałem test i program który działał poprawnie gdy wszystkie instrukcje zawarte były w obsłudze przerwania, przestał działać, gdy część instrukcji wyniesiona została do programu głównego. Zastanawiam się więc czy takie rozumowanie jest poprawne. Programu niestety w całości zamieścić nie mogę.
Dziękuję za wypowiedzi w temacie.
Z definicji liczba instrukcji w obsłudze przerwania powinna być minimalna, by mogło się ono maksymalnie szybko wykonać.
Tymczasem w przypadku mojego programu liczba instrukcji w obsłudze przerwania była stosunkowo duża. By wybrnąć z tego problemu zamierzam w przerwaniu ustawić flagę która oznacza, że przerwanie zostało wygenerowane, natomiast w pętli programu głównego wykonać grupę instrukcji tylko raz (po wykonaniu się przerwania) i ustawić flagę na 0. Tym sposobem większość instrukcji znajdzie się w programie głównym a nie w obsłudze przerwania. Proszę o podzielenie się uwagami, czy takie działanie ma sens. Proszę o weryfikację tego rozumowania:
Kod: text
Dodam, że wykonałem test i program który działał poprawnie gdy wszystkie instrukcje zawarte były w obsłudze przerwania, przestał działać, gdy część instrukcji wyniesiona została do programu głównego. Zastanawiam się więc czy takie rozumowanie jest poprawne. Programu niestety w całości zamieścić nie mogę.
Dziękuję za wypowiedzi w temacie.