10 mV |
1 |
1 |
1 |
100 mV |
0 |
0 |
1 |
1 V |
1 |
0 |
0 |
10 V |
1 |
1 |
0 |
100 V |
0 |
0 |
0 |
1000 V |
0 |
1 |
0 |
W celu dokonania zdalnego pomiaru przy użyciu woltomierza i przesłania wyniku do systemu mikroprocesorowego należy wykonać następujące kroki:
• zaprogramować porty 8255 i port PE7 jako wejścia oraz porty PD i PEO jako wyjścia;
• odblokować woltomierz i przygotować go do zewnętrznego uruchomienia - sygnały na styku 45 i 47 woltomierza w stanie wysokim;
• wyzwolić woltomierz do pomiaru poprzez impuls ujemny na styku 47. Sygnał wyzwalający powinien trwać przez około 500 ns w stanie niskim co odpowiada jednemu taktowi zegara systemu 8080. Następnie powinien powrócić do stanu wysokiego, umożliwiając kolejne pomiary;
• sprawdzić koniec pomiaru sygnalizowany przez woltomierz impulsem dodatnim o czasie trwania 10 ms na styku 40. Należy zaznaczyć, iż zaraz po wyzwoleniu, trzeba najpierw sprawdzać stan niegotowości poprzez detekcję 0 na styku 40, a dopiero po jego pojawieniu się stan gotowości do odczytu wyniku pomiaru przez detekcję 1 na tymże samym styku;
• odczytać wartość zmierzoną poprzez porty 8255.
3. Opis układu 8279
Układ 8279 jest programowalnym interfejsem zapewniającym sprzęg między systemem mikroprocesorowym 8080 a klawiaturą i wyświetlaczem cyfrowym. Zawiera 8- lub 16-bajtowy bufor Display RAM, gdzie są przechowywane wyświetlane dane oraz 8-bajtowy bufor FIFO do przechowywania kodów odczytanych klawiszy. Poniższy opis układu dotyczy tylko wykorzystania 8279 do wyświetlania informacji co jest tematem ćwiczenia. Bardziej szczegółowy opis znajduje się w danych katalogowych na końcu instrukcji.
Układ 8279 zajmuje 2 lokacje w przestrzeni układów we/wy mP 8080 - odpowiednio adresy 02 i 03. Linia adresowa A0 decyduje o tym czy przesyłane sygnały do i z układu poprzez linie D0-D7 są traktowane jako komenda lub status - A0=1 czy jako dana - A0=0. Ponieważ źródłem danych może być bufor klawiatury FIFO bądź Display RAM, ich pochodzenie ustalone jest poprzez wcześniejsze zapisanie odpowiedniej komendy. Zapis danych odbywa się zawsze do Display RAM i może być poprzedzony wydaniem odpowiedniej komendy Write Display RAM -
I i |o|o|ai|a|a|a|a|
gdzie: Al =1 włącza inkrementację tzn. każdy zapis lub odczyt Display RAM powoduje automatyczne zwiększenie wskaźnika położenia zapisywanych lub odczytywanych danych w buforze Display RAM, natomiast AAAA jest adresem jednego z 16 bajtów bufora Display RAM, pod który będzie wpisywana nowa wartość.
Obecnie układ 8279 zaprogramowany jest w systemie MSM 8080 do współpracy z 8-znakowym wyświetlaczem w trybie Left Entry tzn. kolejnym lokacjom pamięci Display RAM odpowiadają od lewej pozycje wyświetlacza. Ponieważ klawiatura KDHEX-79 dysponuje tylko 7 polami, lokacje 0 i 8 nie są wyświetlane.