Do rzeczy pytanie:
1. Czy ma znaczenie gdzie wstawiamy rozkaz:
Kod:
sei(); // włączenie globalnego zezwolenia na przerwania
domyślam się że raczej w funkcji main a potem ?A może nie ma znaczenia ?
pytanie 2. W BB na stronie 324 do rejestru OCR wpisana jest ostateczna wartość z jaką wykonują się przerwania:
Kod:
OCR=107;
natomiast jeśli chcę użyć do wyświetlania temperatury na multipleksowanym wyświetlaczu LED to jak wiadomo aby ludzkie oko nie dostrzegło migotania rejestrowi temu muszę przypisać inną wartość bo 38
No dobrze i taką wartość przypisałem ale teraz jest takie pytanie czy te operacje odczytu z czujnika które wykonywane mają być co 3 sekundy nadal wykonywane są z dokładnośćią jednej sekundy ? A może zmiana częstotliwości przerwań zmieniła ten czas ,czy on się nam nie "rozbiega " ?
Od czego właściwie zależy ten czas tego timera programowego ?
Powiem szczerze że sobie pomyślałem że w książce na str325 jest podane że jeśli częstotliwość wynosi 100Hz i tam aby obliczyć 1 sekundę należało obliczyć 99 przerwań ,a więc idąc tym tropem to jeśli ja wybrałem OCR=38; czyli tym samym 200Hz to w linijce
z instrukcją warunkową w obsługę przerwania str326 powinienem wpisać
Kod:
if(++cnt>199)
Czy dobrze myślę?. Dziękuje za odpowiedź