Witam! Natknąłem się w swojej przygodzie z programowaniem na następujący problem. Otóż jedną z funkcji wykonywanych przez procek ma być sterowanie fazowe obrotami dmuchawy. Udało się uzyskać za pomocą przerwań i timera zmienne opóźnienie w odpowiedzi na detekcję zera. Jako że wystarczy kilka stopni regulacji, zrobiłem to tak, że wartości bardziej znaczącego bajtu licznika przechowuję w tablicy, z której pobiera wartość zmienna globalna posługując się indeksem podsuwanym jej w zależności od potrzeby. W obsłudze przerwania wartością zmiennej jest przeładowywany TH0. Sprawdzanie stanu i pobieranie wartości z tablicy odbywa się co jakieś 2 sekundy. I tu powstaje pewne zjawisko-otóż synchronicznie z przebiegiem pętli w main-wspomniane 2 sek, występuje przeskok w czasie(fazie w stosunku do przejścia przez zero) impulsu do sterowania triaca. Ustąpiło to gdy zmiennej nadałem wartość na początku main i program generował jak potrzeba. Czy odczyt z tablicy tak coś zakłóca? Procedury obsługi przerwań są maksymalnie skrócone tak, żeby nie zakłóciły 1w do DS-ów 1820. Czekam na wszelkie sugestie o pomysły.