Mikroprocesory i Mikrosterowniki Analog-Digital Converter Konwerter Analogowo-Cyfrowy Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com.
Konwersja analog. -> cyfr. U [V] ADC [-]
ADC - rodzaje Przetwornik o porównaniu bezpośrednim Przetwornik z próbkowaniem analogowym Przetwornik podwójnie całkujący Przetwornik z sukcesywną aproksymacją
ADC - cechy rozdzielczość: 10-bit dokładność konwersji ± 2 LSB czas konwersji 65 260 µs częstotliwość taktowania 50 khz 200 khz 8 pojedynczych kanałów wejściowych kanały różnicowe (ze wzmocnieniem) napięciowy zakres pracy 0 Vcc [V] 3 rodzaje napięcia odniesienia tryb Free Running wyzwalanie konwersji zdarzeniem przerwanie od zakończenia konwersji konwersja w stanie uśpienia eliminacja zakłóceń (ADC Noise Reduction Sleep Mode)
Rejestry: ADMUX (ADC Multiplexer) ADCSRA (ADC Control/Status Reg.) ADCL + ADCH (ADC Data Reg.) SFIOR (Special Function Register) Przerwanie: Zakończenie konwersji Flaga ADIF (ADCSRA) Włączanie ADIE (ADCSRA) Wektor 0x00E
ADC - budowa
Rozpoczęcie konwersji
Rozpoczęcie konwersji Pojedyncza konwersja: ADSC (ADCSRA) Konwersja wielokrotna (free running): ADSC (ADCSRA)
Rozpoczęcie konwersji Konwersja wyzwalana zdarzeniem (triggering): wystąpienie zdarzenia wyzwalającego (zbocze ^ na fladze obserwowanego przerwania)
Przebieg konwersji
Przebieg konwersji - pojedyncza Start: ADEN ADSC
Inne typy konwersji Wielokrotna (free running) Start pierwszej Start kolejnych Wyzwalana zdarzeniem (triggering) Start Większy odstęp po konwersji - synchronizacja
Przebieg konwersji - taktowanie 50 200 khz ADEN «0 => stop CLK
Eliminacja zakłóceń
Eliminacja zakłóceń
Wynik konwersji
Wynik konwersji DLA POJEDYNCZEGO SYGNAŁU ANALOGOWEGO: 10-bitowa zapis do rejestru wynik obliczany ze wzoru DLA KONWERSJI RÓŻNICOWEJ: 10-bitowa zapis do rejestru wynik obliczany ze wzoru
Wynik konwersji Odczyt rejestru powoduje zablokowanie całego rejestru Dopiero odczyt odblokowuje rejestr Wniosek:
Rejestry konwertera Analogowo-cyfrowego
ADC Multiplexer Selection Register wybór kanału wejściowego, napięcia odniesienia, zapis wyniku
ADMUX
ADC Data Register rejestr wyniku -ADLAR (ADMUX) -
ADC Control and Status Register A rejestr sterujący ADEN (ADC ENable) ADSC (ADC Start Conversion) ADATE (ADC Auto Trigger Enable) ADIF (ADC Interrupt Flag) ADIE (ADC Interrupt Enable)
ADC Control and Status Register A rejestr sterujący (ADC Prescaler Select)
Special Function IO Register opcje auto trigger
Przykład Konwerter analogowo-cyfrowy Program przykładowy
Przykład
Przykładowe zagadnienia sprawdzające 1. Napięcie odniesienia do czego i dlaczego jest konieczne? 2. Tryby pracy: konwersja pojedyncza (single), ciągła (free running), wyzwalana zdarzeniem (triggering) podstawowe podobieństwa i różnice. 3. Jaki będzie wynik konwersji na postać cyfrową sygnału V IN = 0,7 V, przy napięciu referencyjnym V REF = 1,2 V? 4. Jak należy odczytywać wynik z rejestru ADC (kolejność odczytu rejestrów)?