Serwis Edukacyjny
w I-LO w Tarnowie
obrazek

Materiały dla uczniów liceum

  Wyjście       Spis treści       Wstecz       Dalej  

obrazek

Autor artykułu: mgr Jerzy Wałaszek
Konsultacje: Wojciech Grodowski, mgr inż. Janusz Wałaszek

©2023 mgr Jerzy Wałaszek
I LO w Tarnowie

obrazek

Mikrokontrolery

ATtiny25/45/85

Komparator analogowy

obrazek

Educational and Non-Profit Use of Copyrighted Material:

If you use Microchip copyrighted material solely for educational (non-profit) purposes falling under the “fair use” exception of the U.S. Copyright Act of 1976 then you do not need Microchip’s written permission. For example, Microchip’s permission is not required when using copyrighted material in: (1) an academic report, thesis, or dissertation; (2) classroom handouts or textbook; or (3) a presentation or article that is solely educational in nature (e.g., technical article published in a magazine).

https://www.microchip.com/about-us/legal-information/copyright-usage-guidelines

SPIS TREŚCI
Podrozdziały

obrazek

Komparator analogowy

Komparator analogowy (ang. Analog Comparator) porównuje wartości wejściowe na nieodwracającej końcówce AIN0 (ang. Analog Input, wejście analogowe) oraz na odwracającej końcówce AIN1:

Gdy napięcie na nieodwracającej końcówce AIN0 jest wyższe od napięcia napięcia na końcówce odwracającej AIN1, to jest ustawiane wyjście komparatora analogowego ACO. Komparator może wyzwalać oddzielne przerwanie, wyłączne dla komparatora analogowego Użytkownik może wybrać wyzwalanie przerwania przy zboczu narastającym, opadającym lub zmianie poziomu logicznego na wyjściu z komparatora. Poniższy rysunek przedstawia schemat blokowy komparatora wraz z otaczającą go siecią logiczną:

obrazek

Na początek:  podrozdziału   strony 

Multipleksowane wejście komparatora

Możliwe jest wybranie dowolnej z końcówek ADC3..0 jako wejście odwracające komparatora analogowego. Do wyboru tego wejścia wykorzystywany jest multiplekser przetwornika analogowo/cyfrowego, co w konsekwencji wymaga wyłączenia tego przetwornika w celu skorzystania z tej możliwości. Jeśli bit włączenia multipleksera dla komparatora analogowego (ang. Analog Comparator Multiplexer Enable bit, ACME w rejestrze ADCSRB) jest ustawiony, a przetwornik A/C jest wyłączony (bit ADEN w ADCSRA wyzerowany), bity MUX[1:0] w rejestrze ADMUX wybierają końcówkę wejściową jako wejście odwracające dla komparatora analogowego.

Multipleksowane wejście dla komparatora analogowego

ACME ADEN MUX1:0 Wejście odwracające komparatora analogowego
0 x xx AIN1
1 1 xxx AIN1
1 0 00 ADC0
1 0 01 ADC1
1 0 10 ADC2
1 0 11 ADC3
Na początek:  podrozdziału   strony 

Opis rejestrów

ADCSRB – ADC Control and Status Register B – Rejestr B sterowania i stanu przetwornika A/C

Bit 7 6 5 4 3 2 1 0  
0x03 BIN ACME IPR ADTS2 ADTS1 ADTS0 ADCSRB
Zapis/Odczyt Z/O Z/O Z/O O O Z/O Z/O Z/O  
Wartość początkowa 0 0 0 0 0 0 0 0  

Bit 6 – ACME: Analog Comparator Multiplexer Enable – Włączenie multipleksera dla komparatora analogowego

Gdy bit ten zostanie zapisany logiczną jedynką, a przetwornik analogowo/cyfrowy jest wyłączony (wyzerowany bit ADEN w rejestrze ADCSRA), multiplekser przetwornika A/C wybiera wejście odwracające dla komparatora analogowego. Jeśli do bitu ACME zostanie wpisane logiczne zero, to jako wejście odwracające komparatora analogowego będzie użyta końcówka AIN1.


ACSR – Analog Comparator Control and Status Register – Rejestr sterowania i stanu komparatora analogowego

Bit 7 6 5 4 3 2 1 0  
0x08 ACD ACBG ACO ACI ACIE ACIS1 ACIS0 ACSR
Zapis/Odczyt Z/O Z/O O Z/O Z/O O Z/O Z/O  
Wartość początkowa 0 0 N/A 0 0 0 0 0  

Bit 7 – ACD: Analog Comparator Disable – Wyłączenie komparatora analogowego

Gdy w bicie tym zostanie umieszczona logiczna jedynka, wyłączane jest zasilanie komparatora analogowego. Bit można ustawiać w dowolnej chwili w celu wyłączenia komparatora. Spowoduje to zmniejszenie poboru prądu w trybach normalnym i bezczynnym. Przy zmianie bitu ACD należy wyłączyć przerwania z komparatora przez wyzerowanie bitu ACSR. W przeciwnym razie może zostać wygenerowane przerwanie przy zmianie stanu bitu.

Bit 6 – ACBG: Analog Comparator Bandgap Select – Wybór napięcia odniesienia

Gdyn bit ten jest ustawiony, to na wejście nieodwracające komparatora analogowego podawane jest stałe napięcie odniesienia. Gdy bit jest wyzerowany na wejście nieodwracające podawane jest napięcie z końcówki  AIN0. Gdy zostanie użyte napięcie odniesienia, należy odczekać pewien czas, aby napięcie to ustabilizowało się. W przeciwnym razie na początku może dawać złe wartości.

Bit 5 – ACO: Analog Comparator Output – Wyjście komparatora analogowego

Wyjście z komparatora analogowego jest synchronizowane, a następnie łączone bezpośrednio z ACO. Synchronizacja wprowadza opóźnienie 1 lub 2 cykli zegara.

Bit 4 – ACI: Analog Comparator Interrupt Flag – Znacznik przerwania z komparatora analogowego

Ten bit ustawiany jest sprzętowo, gdy wyjście komparatora wyzwala przerwanie w wybranym trybie przez ustawienia bitów ACIS1 i ACIS0. Procedura obsługi przerwania z komparatora analogowego jest wykonywana, jeśli są ustawione bity ACIE oraz  I w rejestrze SREG. Bit ACI jest zerowany sprzętowo przy wykonaniu odpowiedniego wektora przerwania. Alternatywnie można go wyzerować poprzez zapis logicznej jedynki do tego znacznika.

Bit 3 – ACIE: Analog Comparator Interrupt Enable – Włączenie przerwań z komparatora analogowego

Gdy bity ACIE oraz I w rejestrze SREG są ustawione, włączone jest przerwanie z komparatora analogowego. Gdy bit ACIE zostaje wyzerowany, przerwanie to jest wyłączone.

Bit 2 – Zarezerwowany

Ten bit jest zarezerwowany w ATtiny25/45/85 i przy odczycie zawsze daje wartość 0.

Bity 1:0 – ACIS1, ACIS0: Analog Comparator Interrupt Mode Select – Wybór trybu generacji przerwania przez komparator analogowy

Bity te określają, które ze zdarzeń komparatora wyzwoli przerwanie od komparatora analogowego. Poniższa tabela pokazuje ich ustawienia:

ACIS1 ACIS0 Tryb przerwania
0 0 Przerwanie przy zmianie stanu wyjścia komparatora.
0 1 Zarezerwowane.
1 0 Przerwanie przy opadającym zboczu sygnału na wyjściu komparatora.
1 1 Przerwanie przy narastającym zboczu sygnału na wyjściu komparatora.

Przy zmianie bitów ACIS1/ACIS0 należy wyłączyć przerwanie z komparatora analogowego przez wyzerowanie jego bitu ACIE w rejestrze ACSR. W przeciwnym razie przerwanie może zostać wygenerowane przy zmianie.


DIDR0 – Digital Input Disable Register 0 – Rejestr 0 wyłączania wejść cyfrowych

Bit 7 6 5 4 3 2 1 0  
0x14 ADC0D ADC2D ADC3D ADC1D AIN1D AIN0D DIDR0
Zapis/Odczyt O O Z/O Z/O Z/O Z/O Z/O Z/O  
Wartość początkowa 0 0 0 0 0 0 0 0  

 

Bity 1:0 – AIN1D, AIN0D: AIN[1:0] Digital input buffer disable – Wyłączenie buforów wejść cyfrowych

Gdy w bicie zostanie zapisana logiczna jedynka, zostaje wyłączony bufor cyfrowy połączony z daną końcówką. Wtedy odpowiadający mu bit w rejestrze PIN będzie zawsze dawał odczyt 0. Gdy do końcówki AIN1/0 zostaje przyłożone napięcie analogowe, a nie jest potrzebne wejście cyfrowe z tej końcówki, odpowiedni bit AIN1D, AIN0D powinien zostać ustawiony w celu zmniejszenia poboru prądu w cyfrowym buforze wejścia.

Na początek:  podrozdziału   strony 

Zespół Przedmiotowy
Chemii-Fizyki-Informatyki

w I Liceum Ogólnokształcącym
im. Kazimierza Brodzińskiego
w Tarnowie
ul. Piłsudskiego 4
©2023 mgr Jerzy Wałaszek

Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.

Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl

Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.

Informacje dodatkowe.