Mikrokontrolery - Jak zacząć?

... czyli zbiór praktycznej wiedzy dot. mikrokontrolerów.

piątek, 1 kwietnia 2011

Pułapki AVR: Niekontrolowane przerwanie z komparatora


Autor: Dondu

Artykuł jest fragmentem cyklu: Pułapki mikrokontrolerów AVR

Komparator analogowy w mikrokontrolerach AVR ma możliwość zgłaszania przerwań. Istnieje przypadek, w którym może nastąpić niekontrolowane przerwanie w trakcie wyłączania komparatora (np. w celu oszczędzania energii baterii zasilającej mikrokontroler):


tłumaczenie:

Datasheet ATmega8 - str. 194
Gdy zmieniasz bit ACD (wł/wył komparator) przerwania komparatora muszą być wyłączone przez wyzerowanie bitu ACIE w rejestrze ACSR. W przeciwnym wypadku może wystąpić przerwanie podczas zmiany bitu ACD.


Innymi słowy ważne jest zachowanie takiej kolejności instrukcji, podczas wyłączania komparatora:
//wyłączenie komparatora analogowego 
ACSR &= ~(1<<ACIE);  //wyłącz przerwania komparatora
ACSR |= (1<<ACD);    //wyłącz komparator (uwaga! wyjątek opisany poniżej)

Zwróć uwagę jeszcze na to, że komparator domyślnie jest włączony (ustawione zero), a żeby go wyłączyć trzeba ustawić jedynkę na bicie ACD.


Zobacz pozostałe pułapki AVR

Oceń artykuł.
Wasze opinie są dla nas ważne, gdyż pozwalają dopracować poszczególne artykuły.
Pozdrawiamy, Autorzy
Ten artykuł oceniam na:

3 komentarze:

  1. Witam
    Osobiście uważam, że naturalnym językiem dla mikrokontrolerów AVR jest assembler, dlatego zalecenia programowe dobrze by było ilustrować przede wszystkim w assemblerze a ewentualnie dodatkowo w C. Niestety należy się przy tym liczyć z ryzykiem porzucania C na korzyść asseblera przez czytelników :-)

    OdpowiedzUsuń
  2. Przeniosłem Twój komentarz do właściwego tematu: Jaki język wybrać?

    OdpowiedzUsuń
  3. nio i tego szukałem SUPER

    OdpowiedzUsuń

Działy
Działy dodatkowe
Inne
O blogu




Dzisiaj
--> za darmo!!! <--
1. USBasp
2. microBOARD M8


Napisz artykuł
--> i wygraj nagrodę. <--


Co nowego na blogu?
Śledź naszego Facebook-a



Co nowego na blogu?
Śledź nas na Google+

/* 20140911 Wyłączona prawa kolumna */
  • 00

    dni

  • 00

    godzin

  • :
  • 00

    minut

  • :
  • 00

    sekund

Nie czekaj do ostatniego dnia!
Jakość opisu projektu także jest istotna (pkt 9.2 regulaminu).

Sponsorzy:

Zapamiętaj ten artykuł w moim prywatnym spisie treści.