Mikrokontrolery AVR XMEGA w praktyce, część 20. Komparator analogowy

Między mikrokontrolerami ATmega i XMEGA jest przepaść technologiczna – widać to również w obszarze funkcji analogowych. Do dyspozycji mamy zaawansowane, wielokanałowe przetworniki analogowo-cyfrowe, cyfrowo-analogowe oraz kilka komparatorów analogowych (a nie jeden, jak w Atmega). W tym odcinku zajmiemy się komparatorem analogowym.

W mikrokontrolerach XMEGA wyróżnia się porty cyfrowe i analogowe. W portach cyfrowych dostępne są wyjścia PWM, interfejsy komunikacyjne, itp. Przyzwyczailiśmy się do tego, że peryferia cyfrowe są powielone na każdym porcie. Dla peryferiów analogowych jest tak samo – przetworniki i komparatory również są powielone. W każdym porcie analogowym są dwa komparatory, a procesor ATxmega128A3U na płytce eXtrino XL, posiada dwa takie porty, zatem mamy do dyspozycji aż cztery komparatory analogowe – oznaczone odpowiednio ACA.AC0, ACA.AC1, ACB.AC0, ACB.AC1.

 

Komparatory w XMEGA

Komparator jest bardzo prostym układem analogowym, porównującym napięcia doprowadzone do wejścia nieodwracającego (+) oraz odwracającego (–). Jeśli napięcie doprowadzone do wejścia nieodwracającego (+) jest większe niż napięcie na wejściu odwracającym (–), to na wyjściu pojawi się stan logiczny wysoki, a w przeciwnym razie – stan niski.

Budowę komparatorów analogowych oraz otaczających ich układów przestawiono na rysunku 1.

 

Rys. 1. Komparatory w portach analogowych XMEGA

 

W starych układach ATtiny i ATmega, wejścia komparatora były na sztywno połączone z dwoma ustalonymi pinami i nie można było w żaden sposób tego zmienić. XMEGA jest zdecydowanie bardziej elastyczna. Jako wejście nieodwracające może nam służyć dowolny pin od 0 do 6, a wejściem odwracającym może być pin 0, 1, 3, 5 lub 7.

W praktyce bardzo często porównujemy badany sygnał z ustalonym stałym napięciem referencyjnym. Projektanci mikrokontrolerów XMEGA umożliwili wybór aż trzech źródeł napięcia referencyjnego:

  • 1 V bandgap reference,
  • 12-bitowy przetwornik cyfrowo-analogowy,
  • 64-stopniowy dzielnik napięcia zasilającego.

Przetwornik cyfrowo-analogowy można wewnętrznie połączyć z wejściem odwracającym lub nieodwracającym, a bandgap i dzielnik napięcia mogą być połączone tylko z wejściem odwracającym. Zdolność do tworzenia wewnętrznych połączeń, bez żadnych zewnętrznych elementów elektronicznych, daje bardzo ciekawe możliwości. Na przykład bardzo łatwo jest sprawić, by procesor monitorował swoje własne napięcie zasilające, a w razie spadku poniżej wyznaczonego progu, komparator wygeneruje przerwanie lub zdarzenie.

Zdarza się, że różnica napięć doprowadzonych do obu wejść komparatora jest bardzo niewielka. Może to powodować chaotyczne, szybkie i wielokrotne przełączenia stanu wyjścia. Aby temu zapobiec, dobrze jest dodać do komparatora dodatnie sprzężenie zwrotne, przez co utworzy się histereza. W XMEGA wystarczy ustawić dwa bity w odpowiednim rejestrze, by włączyć histerezę małą (30 mV) lub dużą (60 mV).

Wyjście komparatora możemy także połączyć z dedykowanym do tego pinem mikrokontrolera. Niestety nie mamy tutaj możliwości wyboru – wyjście komparatora 0 połączone jest z pinem 7 odpowiadającego mu portu analogowego, a wyjście komparatora 1 połączono z pinem 6.

Dwa komparatory, w obrębie jednego portu analogowego, mogą współpracować ze sobą tworząc komparator okienkowy. Do takiego układu doprowadzamy jedno napięcie badane oraz dwa napięcia referencyjne. Komparator okienkowy umożliwia stwierdzenie czy badany sygnał jest pomiędzy napięciami referencyjnymi (w oknie), poniżej lub powyżej okna. Schemat takiego rozwiązania przedstawiono na rysunku 2.

 

Rys. 2. Komparator okienkowy

 

Dystrybutorem zestawu X3-DIL64 jest KAMAMI.pl.

 

Dominik Leon Bieczyński

www.leon-instruments.pl

O autorze