1. Narysuj schemat blokowy przetwornika ADC w mikrokontrolerach rodziny STM32.
2. Wymień tryby pracy ze względu na źródło wyzwolenia.
W STM32 mamy do dyspozycji kilka trybów działania ADC:
• ciągła lub jednorazowa konwersja pojedynczego kanału, lub wielu kanałów,
• tryb nieciągły (discontinuous),
• jednoczesna praca dwóch przetworników,
• tryb pracy niezależnej (independent),
• tryb przemiatania (skanowania) wejść,
• tryb czuwania,
• wyzwalanie przetwornika za pomocą timera lub zewnętrznego przerwania.
3. Opisz różnice wykorzystania grup kanałów.
Z rys. 1 wynika, że ADC może przetwarzać sygnały w dwóch grupach: regular group (regularna) oraz injected group(„wstrzykiwana”).
Regular group:
- możliwość przypisania 16 kanałów,
- niższy priorytet niż dla injected group,
- możliwe opóźnienia,
Injected group:
- możliwość przypisania 4 kanałów (dla każdego kanału oddzielny rejestr,
- wysoki priorytet (wyższy niż dla regular group),
- brak opóźnień,
Jeżeli konwersja regular group jest w trakcie wykonywania i MCU otrzyma żądanie wykonania konwersji grupy „wstrzykiwanej”, to wtedy następuje zawieszenie przetwarzania na jej rzecz.
W momencie, gdy proces jej przetwarzania zostanie zakończony, to wywłaszczona konwersja zostaje wznowiona od momentu jej przerwania. Zachowanie to pokazano na rys. 2.
Ponadto injected group ma oddzielne rejestry danych dla każdego z kanałów pomiarowych, czyli w sumie cztery, co zaznaczono na rys. 1.
4. Określ minimalny czas przetwarzania i czynniki zależności.
Maksymalna częstotliwość, z jaką może pracować wbudowany w mikrokontrolery przetwornik analogowo-cyfrowy, wynosi 1 MHz (czas konwersji 1 µs).
Generalnie czas konwersji jest wyznaczany z zależności:
T = programowany czas próbkowania + 12,5 cyklu zegarowego
Minimalny programowany czas próbkowania jest równy 1,5 cyklu zegarowego. Podsumowując, minimalny czas konwersji wynosi 1,5 + 12,5 = 14 cykli, a skoro częstotliwość taktowania wynosi 14 MHz, to całkowity czas przetwarzania A/C wynosi 1 µs.
Zatem zależy on od częstotliwości taktowania przetwornika (14 MHz), programowalnego czasu próbkowania i cyklu zegarowego.
5. Podaj liczbę kanałów pomiarowych, maksymalną częstotliwość sygnału zegara taktującego przetworniki oraz systemowego.
- 18 (w tym wliczone jest 16 kanałów zewnętrzynych i 2 kanały wewnętrzne: do pomiaru napięcia na potencjometrze RV1 ( kanał 14 czyli ADC12_IN14) oraz temperaturę mikrokontrolera w formie liczbowej (kanał 16 - ADC12_IN16)),
- przetwornik może być taktowany z maksymalną częstotliwością równą 14 MHz,
- maksymalna częstotliwość sygnału zegara systemowego wynosi 56 MHz (dla pracy z przetwornikiem)natomiast podczas pracy bez przetwornika zegar systemowy ma 72 MHz.
6. Do czego służy analogowy watchdog?
Watchdog – służy do ustalania progów napięć (niski i wysoki), po przekroczeniu których może być generowane przerwanie.
7. Wymień źródła przerwań od przetworników.
- ADC_IT_EOC – przerwanie po zakończeniu konwersji grupy regular,
- ADC_IT_JEOC – przerwanie po zakończeniu konwersji grupy injected,
- ADC_IT_AWD – przerwanie od analogowego watchdoga.
8. Do czego służy proces kalibracji przetworników.
Aby uzyskać możliwie dokładny wynik przetwarzania musimy wykonać kalibrację przetwornika.
9. W jakim celu mogą być wykorzystywane przetworniki ADC mikrokontrolera STM32?
Przetworniki ADC mikrokontrolera STM 32 mogą być wykorzystywane do przekształcania informacji analogowych na cyfrowe np. przy pomiarach temperatury, ciśnienia, napięcia itp.