Title: Wyklad 4
1Wyklad 4
- Przetwornik Analogowo-Cyfrowy
- (Analog to Digital Converter ADC)
- oraz
- Jednostki Czasowo-licznikowe (Timery)
- SAB80C537
- dr inz. Andrzej Przybyl
- Katedra Inzynierii Komputerowej
- Politechnika Czestochowska
2Przetwornik Analogowo-CyfrowyWstep
- Zadaniem przetwornika analogowo-cyfrowego jest
konwersja wartosci napiecia elektrycznego na
wartosc liczbowa w formacie binarnym - Sygnal analogowy w postaci napiecia elektrycznego
z zakresu 0..5V (wystepujacy na wybranych nózkach
procesora) jest konwertowany na liczbe z zakresu
0..(2n) -1. - Im wieksza liczba bitów (n) przetwornika tym
przetwornik jest dokladniejszy (ma wieksza
rozdzielczosc). - Przykladowo dla przetwornika 8-bitowego
(wystepujacego w systemie SAB80C537) n8 a zakres
wynosi odpowiednio 0..255.
3Podstawowe parametry przetwornika ADC
- 12 multiplexowanych kanalów wejsciowych
wspóldzielonych ze standardowymi (GPIO) funkcjami
portów P7, P8
4Podstawowe parametry przetwornika ADC, cd.
- Programowalne wewnetrzne poziomy referencyjne
(zakres przetwarzania moze byc zawezony). Mozliwe
ustawienie 16-poziomów kazdego (górnego i
dolnego) z napiec referencyjnych z zakresu 0..5V - 8-bitowa rozdzielczosc przetwarzania zakresu
napiec referencyjnych - Wybieralny zewnetrzny lub wewnetrzny start
konwersji
5Rejestr ADCON0 i ADCON1
6Wybór kanalu do przetwarzania
7Programowanie zakresów konwersji
8Przykladowa procedura
- Odczyt kanalu nr 7 (port P7.7)
- odczytaj_AD1
- CLR ADEX konwersja uruchamiana wewnetrznie
- (przez program)
- CLR ADM pojedyncza konwersja
- MOV ADCON1,7 numer kanalu wg tabeli
- mov DAPR,0 ustawienie zakresu
- przetwarzania 0..5V, i wystartowanie
konwersji - czekaj1
- jb BSY, czekaj1 oczekiwanie na koniec
przetwarzania -
- mov A,ADDAT odczyt wyniku z rejestru wynikowego
- ret powrót do programu wywolujacego
9Jednostki czasowo-licznikoweTIMERY
- Procesor SAB80C537 posiada kilka jednostek
czasowo-licznikowych, tzw. timerów - T0, T1 uniwersalne timery identyczne jak we
wszystkich procesorach z rodziny 80C51 - T2 i Compare Timer sa dodatkowymi timerami
dostosowanymi do zadan pomiaru i generacji
przebiegów impulsowych takich jak Modulacja
Szerokosci Impulsu (ang. PWM) itp.
10Timery T0 i T1, tryby pracy i konfiguracja,
REJESTR TMOD (89h SFR)
11Timery T0 i T1, tryby pracy i konfiguracja
12Timery T0 i T1. Tryb 1 16-bitowy
- TH0, TL0 (TH1, TL1) sa polaczone kaskadowo
tworzac timer 16-bitowy - Timer jest napedzany zegarem o czestotliwosci
OSC/12 - Przepelnienie timera powoduje wyzerowanie TL0,
TH0 i ustawienie TF0 (TF1)
13Timery T0 i T1. Tryb 2 8-bitowy z
automatycznym przeladowywaniem
- TL0 tworzy 8-bitowy timer
- Przy przepelnieniu (oprócz ustawienia TF0)
PRZELADOWYWANA jest zawartosc TL0 wartoscia
poczatkowa zawarta w TH0 (TH0 nie ulega zmianie)
14Pytania kontrolne
- Podac i wyjasnic zaleznosc rozdzielczosci od
liczby bitów przetwornika analogowo-cyfrowego
(AC) - Wyjasnic pojecia multipleksowania kanalów
wejsciowych przetwornika AC - Opisac w punktach procedure odczytu przetwornika
AC - Podac podstawowe dane (rozdzielczosci, tryby
pracy itp.) jednostek czasowo licznikowych (tzw.
timerów) T0 i T1 mikrokontrolera SAB80C537 - Opisac zjawisko przepelniania sie liczników
(funkcjonowanie flag przepelnienia, pojemnosc
licznika a jego liczba bitów, mozliwosci
wplywania na szybkosc przepelniania sie licznika
w systemie z mikrokontrolerem).