ADC - WEMiF
Transkrypt
ADC - WEMiF
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. ADC - cechy • • • • • • • • • • • • • • 10-o bitowy wynik nieliniowość 0,5 LSB dokładność konwersji ± 2 LSB czas konwersji 65÷260 µs 8 pojedynczych kanałów wejściowych 7 kanałów różnicowych 2 kanały różnicowe ze wzmocnieniem zapis wyniku wyrównywany do P lub L zakres napięć 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ń dr inż. Piotr Markowski © 2015 dr inż. Piotr Markowski © 2015 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 dr inż. Piotr Markowski © 2015 dr inż. Piotr Markowski © 2015 Rozpoczęcie konwersji Rozpoczęcie konwersji dr inż. Piotr Markowski © 2015 Pojedyncza konwersja: ADSC (ADCSRA) Konwersja wielokrotna (free running): ADSC (ADCSRA) Rozpoczęcie konwersji dr inż. Piotr Markowski © 2015 Konwersja wyzwalana zdarzeniem (triggering): wystąpienie zdarzenia wyzwalającego (zbocze ^ na fladze obserwowanego przerwania) dr inż. Piotr Markowski © 2015 Przebieg konwersji Przebieg konwersji dr inż. Piotr Markowski © 2015 U [V] ADCHL [-] t [µs] Przebieg konwersji - pojedyncza dr inż. Piotr Markowski © 2015 Start: ADEN ADSC Inne typy konwersji dr inż. Piotr Markowski © 2015 Wielokrotna (free running) Start pierwszej – Start kolejnych – Wyzwalana zdarzeniem (triggering) Start – Większy odstęp po konwersji - synchronizacja Przebieg konwersji - taktowanie dr inż. Piotr Markowski © 2015 50 ÷ 200 kHz ADEN « 0 => stop CLK Konwersja sygnałów różnicowych dr inż. Piotr Markowski © 2015 Różnicowe + triggering: ADEN « 0 ADEN « 1 (przed każdym) dr inż. Piotr Markowski © 2015 Eliminacja zakłóceń Eliminacja zakłóceń dr inż. Piotr Markowski © 2015 dr inż. Piotr Markowski © 2015 Wynik konwersji Wynik konwersji dr inż. Piotr Markowski © 2015 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 dr inż. Piotr Markowski © 2015 Rejestry konwertera Analogowo-cyfrowego ADC Multiplexer Selection Register wybór kanału wejściowego, napięcia odniesienia, zapis wyniku dr inż. Piotr Markowski © 2015 ADMUX dr inż. Piotr Markowski © 2015 ADC Data Register rejestr wyniku - ADLAR (ADMUX) - dr inż. Piotr Markowski © 2015 ADC Control and Status Register A rejestr sterujący dr inż. Piotr Markowski © 2015 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 dr inż. Piotr Markowski © 2015 (ADC Prescaler Select) Special Function IO Register opcje auto trigger dr inż. Piotr Markowski © 2015 Przykład dr inż. Piotr Markowski © 2015 Konwerter analogowo-cyfrowy Program przykładowy Przykład Przykładowe zagadnienia sprawdzające dr inż. Piotr Markowski © 2015 1. 2. 3. 4. Napięcie odniesienia – do czego i dlaczego jest konieczne? Tryby pracy: konwersja pojedyncza (single), ciągła (free running), wyzwalana zdarzeniem (triggering) – podstawowe podobieństwa i różnice. Jaki będzie wynik konwersji na postać cyfrową sygnału VIN = 0,7 V, przy napięciu referencyjnym VREF = 1,2 V? Jak należy odczytywać wynik z rejestru ADC (kolejność odczytu rejestrów)?