Rozkład pinów, tryby i aplikacje programowalnego interfejsu peryferyjnego (PPI) Intel 8255

paź 24 2025
Źródło: DiGi-Electronics
Przeglądaj: 2018

Programowalny interfejs peryferyjny (PPI) Intel 8255 był kluczowym elementem łączącym mikroprocesory z urządzeniami zewnętrznymi we wczesnych dniach systemów cyfrowych. Dzięki wszechstronnym portom I/O, wielu trybom pracy i łatwości programowania, model 8255 umożliwia niezawodną komunikację z wyświetlaczami, czujnikami i sterownikami, dzięki czemu jest przydatny zarówno w edukacji, jak i przemyśle.

Klasa C1. 8255 Programowalny interfejs peryferyjny (PPI) Przegląd

Klasa C2. Cechy układu 8255 PPI

Klasa C3. Rozkład pinów układu 8255 PPI

Klasa C4. Architektura układu 8255 PPI

Klasa C5. Tryby pracy i zasada działania układu 8255 PPI

Klasa C6. Rozważania dotyczące interfejsu układu 8255 PPI

Klasa C7. Zalety układu 8255 PPI

Klasa C8. Zastosowania układu 8255 PPI

Klasa C9. Porównanie chipów 8255 PPI z innymi PPI

Klasa C10. Rozwiązywanie problemów i typowe problemy

Klasa C11. Konkluzja

Klasa C12. Często zadawane pytania [FAQ]

Figure 1. 8255 Microprocessor

8255 Programowalny interfejs peryferyjny (PPI) Overview

Układ Intel 8255 PPI jest szeroko stosowanym układem I/O przeznaczonym do łączenia mikroprocesorów z urządzeniami zewnętrznymi. Działa jako most komunikacyjny dla urządzeń peryferyjnych, takich jak przetworniki ADC, przetworniki cyfrowo-analogowe, klawiatury i wyświetlacze. Obsługuje zarówno bezpośrednie, jak i sterowane przerwaniami wejścia/wyjścia, zapewniając elastyczność w projektowaniu systemu. Dzięki trzem 8-bitowym dwukierunkowym portom (A, B, C) zapewnia 24 konfigurowalne linie I/O. Jego opłacalność i kompatybilność z procesorami, takimi jak Intel 8085/8086, sprawiły, że stał się podstawą wczesnych systemów komputerowych, zestawów szkoleniowych i kontrolerów przemysłowych.

Cechy układu 8255 PPI

• Programowalny interfejs – konfigurowalny za pomocą instrukcji oprogramowania w celu dostosowania do urządzeń, takich jak wyświetlacze, czujniki i moduły wejściowe.

• Trzy porty 8-bitowe – Porty A, B i C zapewniają 24 linie, które mogą działać jako wejście lub wyjście.

• Wiele trybów pracy –

Tryb 0: Proste wejście/wyjście bez uzgadniania.

Tryb 1: Stroboskopowe I/O z sygnałami uzgadniania dla zsynchronizowanej komunikacji.

Tryb 2: Dwukierunkowy transfer danych z uzgadnianiem (tylko na porcie A).

• Ustawianie/resetowanie bitów (BSR) – Bity portu C można indywidualnie ustawiać lub kasować dla aplikacji kontrolnych/statusowych.

• Elastyczne grupowanie – Porty mogą być podzielone na grupy 8-bitowe lub 4-bitowe.

• Kompatybilność z TTL – łatwa integracja ze standardowymi cyfrowymi układami scalonymi.

• Niezależne rejestry sterujące – Każdy port może działać osobno, w różnych trybach lub kierunkach.

Rozkład pinów układu 8255 PPI

Figure 2. Pinout of 8255 Microprocessor

Sworzeń nr.GrupaSygnałOpis
1–8Port APA0–PA78-bitowy port I/O ogólnego przeznaczenia
9–16Przyłącze CPC0–PC7Podziel na PC0–PC3 (na dole) i PC4–PC7 (na górze); używane jako linie I/O lub uzgadniania
17–24Przyłącze BPB0–PB78-bitowy port I/O ogólnego przeznaczenia
25SterowanieCS'Wybór żetonów (aktywny niski)
26ZasilanieVccZasilanie +5 V
27SterowanieRD'Włącz odczyt
28SterowanieWR"Włącz zapis
29SterowanieRESETOWANIEResetuje wszystkie porty do stanu wejściowego
30–37Magistrala danychD0–D7Przesyłanie danych/poleceń między procesorem a procesorem 8255
38–39Piny adresoweA0, A1Wybierz wewnętrzne rejestry/porty: 00=Port A, 01=Port B, 10=Port C, 11=Kontrola
Rozdział 40ZiemiaWagaOdniesienie do podłoża

Architektura układu 8255 PPI

Figure 3. Architecture of 8255 Microprocessor

Blok funkcjonalnyOpis
Bufor magistrali danychDziała jako interfejs między dwukierunkową magistralą danych procesora (D7–D0) a wewnętrzną 8-bitową magistralą danych 8255. Tymczasowo przechowuje i przesyła dane między procesorem a wewnętrznymi rejestrami lub portami.
Logika sterowania odczytem/zapisemZarządza całą komunikacją między procesorem a procesorem 8255. Interpretuje sygnały sterujące, takie jak RD, WR, A0, A1, CS i RESET, aby określić typ operacji (odczyt, zapis lub sterowanie) i wybiera właściwy port lub rejestr sterujący.
Logika sterowania (dekoder)Dekoduje słowo sterujące wysyłane przez procesor w celu skonfigurowania portów w różnych trybach (tryb 0, 1 lub 2) lub w trybie Bit Set/Reset (BSR). Określa, jak będzie działać każdy port — jako dane wejściowe, wyjściowe lub uzgadnianie.
Kontrolka grupy ASteruje portem A (8 bitów: PA7–PA0) i górnym portem C (4 bity: PC7–PC4). Obsługuje tryby 0, 1 i 2, umożliwiając proste we/wy, we/wy uzgadniania i dwukierunkowy transfer danych
Kontrola grupy BSteruje portem B (8 bitów: PB7–PB0) i dolnym portem C (4 bity: PC3–PC0). Obsługuje tryby 0 i 1, umożliwiając podstawowe operacje wejścia/wyjścia lub operacje sterowane uzgadnianiem.
Port A8-bitowy port I/O, który może działać jako wejście lub wyjście w zależności od konfiguracji trybu. Obsługuje tryby 0–2 pod kontrolą grupy A.
Przyłącze BKolejny**8-bitowy port I/O** do przesyłania danych. Działa pod kontrolą grupy B i obsługuje tryby 0 i 1.
Przyłącze CPodzielony port 8-bitowy podzielony na dwie grupy 4-bitowe: Górny (PC7–PC4) i Dolny (PC3–PC0). Mogą one działać jako niezależne porty I/O, linie sterujące lub sygnały uzgadniania. Poszczególne bity mogą być również sterowane za pomocą trybu Bit Set/Reset (BSR).
Wewnętrzna magistrala danych (8-bitowa)Łączy wszystkie wewnętrzne bloki 8255, przesyłając dane i informacje sterujące między procesorem, logiką sterowania i portami.
ZasilaczUkład działa z zasilaniem +5V DC i złączem GND do zasilania całego obwodu.

Tryby pracy i zasada działania układu 8255 PPI

Intel 8255 służy jako programowalny interfejs między procesorem a urządzeniami peryferyjnymi, tłumacząc operacje magistrali na równoległe transfery danych. Jego działaniem rządzą kroki inicjalizacji i tryby do wyboru:

Zresetuj stan

Po włączeniu lub zresetowaniu wszystkie porty (A, B i C) są domyślnie w trybie wejściowym, aby uniknąć uszkodzenia urządzeń peryferyjnych z niezamierzonymi wyjściami.

Inicjalizacja

Procesor musi wysłać słowo sterujące, które konfiguruje każdy port jako wejście/wyjście i wybiera jeden z czterech trybów pracy. Dopóki nie zostanie to zrobione, porty pozostają nieaktywne.

Tryby pracy

Tryb ustawiania/resetowania bitów (BSR)

• Dotyczy tylko portu C.

• Umożliwia ustawienie lub wyczyszczenie poszczególnych bitów dla zadań kontrolnych/statusowych.

Tryb 0 – Proste I/O

• Podstawowe wejście/wyjście bez uzgadniania.

• Używany do prostych transferów, takich jak diody LED, przełączniki i wyświetlacze.

Tryb 1 – Stroboskopowe I/O

• Dodaje sygnały uzgadniania (STB, ACK, IBF, OBF) przez port C.

• Zapewnia zsynchronizowany transfer danych peryferyjnych procesora ↔.

Tryb 2 – Dwukierunkowe I/O

• Dostępne tylko w porcie A.

• Obsługuje transfer dwukierunkowy z kontrolą uzgadniania, przydatny w przypadku urządzeń o dużej szybkości lub asynchronicznych.

Operacje odczytu/zapisu

• Zapis: Procesor umieszcza dane na magistrali systemowej, a 8255 dekoduje linie adresowe (A0, A1), aby skierować je do odpowiedniego zatrzasku wyjściowego portu.

• Odczyt: Urządzenia zewnętrzne umieszczają dane na liniach portów, które 8255 zatrzaskuje i udostępnia procesorowi podczas polecenia odczytu.

Synchronizacja

• W trybie 0 przesyłanie danych odbywa się bezpośrednio, bez uścisków dłoni.

• W trybach 1 i 2 sygnały uzgadniania z portu C koordynują gotowość i akceptację, zapobiegając utracie danych podczas szybkich lub asynchronicznych transferów.

Rozważania dotyczące interfejsu układu 8255 PPI

Podczas projektowania systemów z procesorem 8255, staranne połączenie zapewnia niezawodność i zapobiega uszkodzeniom zarówno chipa, jak i urządzeń zewnętrznych:

• Domyślny stan wejścia – Po zresetowaniu wszystkie porty domyślnie ustawiają się na wejścia. Pozwala to uniknąć konfliktów, ale oznacza również, że dane wyjściowe są nieaktywne, dopóki nie zostaną skonfigurowane. Procesor musi zawsze wysłać słowo sterujące, aby prawidłowo zdefiniować kierunek i tryb przed próbą komunikacji.

• Limity napędu wyjściowego – Porty 8255 mogą pobierać lub pobierać tylko ograniczony prąd (kilka miliamperów). Bezpośrednie kierowanie ciężkimi ładunkami, takimi jak lampy, elektromagnesy lub przekaźniki, jest niebezpieczne. Zamiast tego powszechnie stosuje się układy scalone lub sterowników, takie jak ULN2803 (macierz Darlingtona) lub bramki typu otwarty kolektor, takie jak 7406. Zapewniają one wyższą wydajność prądową i chronią PPI.

• Sterowanie silnikiem – W przypadku silników prądu stałego lub silników krokowych porty 8255 nie powinny łączyć się bezpośrednio. Zamiast tego wyjścia muszą być poprowadzone przez stopnie tranzystorowe lub obwody sterownika mostka H. Taki układ umożliwia dwukierunkowy przepływ prądu przy jednoczesnym odizolowaniu PPI od indukcyjnych skoków napięcia.

• Przełączanie obciążenia AC – Interfejs z urządzeniami AC wymaga izolacji ze względów bezpieczeństwa. Przekaźniki mechaniczne lub przekaźniki półprzewodnikowe (SSR) sterowane przez stopnie buforowe zapewniają, że 8255 obsługuje tylko sygnały sterujące, podczas gdy rzeczywiste obciążenie wysokiego napięcia jest bezpiecznie przełączane zewnętrznie.

• Ograniczenia portu C – Bity portu C nie zawsze mogą być swobodnie używane jako ogólne we/wy. W trybach 1 i 2 kilka pinów (np. STB, ACK, IBF, OBF) jest automatycznie zarezerwowanych do sterowania uzgadnianiem. Należy uwzględnić te zarezerwowane wiersze, aby uniknąć konfliktów podczas mieszania ogólnych operacji we/wy z uzgadnianiem.

Zalety układu 8255 PPI

• Kompatybilność procesora – 8255 bezproblemowo współpracuje z procesorami takimi jak Intel 8085, 8086 i ich kompatybilnymi. Jego konstrukcja jest zgodna ze standardowymi protokołami magistrali, dzięki czemu integracja jest prosta bez dodatkowej logiki klejenia.

• Elastyczna konfiguracja portów – Dzięki trzem 8-bitowym portom (A, B, C) użytkownicy mogą skonfigurować je jako wejście, wyjście lub miks w zależności od aplikacji. Możliwość przełączania między prostym I/O (tryb 0) a komunikacją sterowaną uzgadnianiem (tryby 1 i 2) pozwala temu samemu chipowi obsługiwać szeroką gamę zadań.

• Praca z jednym zasilaniem – Zasilany ze standardowego źródła zasilania +5 V, model 8255 można łatwo zasilać w systemach opartych na TTL. Nie są wymagane żadne specjalne regulatory ani wiele poziomów napięcia, co upraszcza projektowanie płytki.

• Niezawodny równoległy transfer danych – Układ zapewnia stabilną i przewidywalną 8-bitową komunikację równoległą, zmniejszając niepewność czasową. Ta niezawodność sprawia, że nadaje się do obsługi wyświetlaczy, odczytu czujników i zarządzania sygnałami sterującymi w rzeczywistych systemach.

• Wartość edukacyjna – Ponieważ jest dobrze udokumentowany i szeroko dostępny, model 8255 jest kluczowym narzędziem dydaktycznym w laboratoriach mikroprocesorowych i zestawach szkoleniowych. Możesz szybko zrozumieć koncepcje interfejsów I/O dzięki praktycznym eksperymentom z tym urządzeniem.

Zastosowania układu 8255 PPI

• Systemy edukacyjne – zestawy szkoleniowe i tablice laboratoryjne często zawierają model 8255, aby zademonstrować koncepcje interfejsów peryferyjnych. Możesz ćwiczyć programowanie różnych trybów i obserwować rzeczywistą interakcję z urządzeniami zewnętrznymi.

• Sterowanie wyświetlaczem – Układ steruje wizualnymi urządzeniami wyjściowymi, takimi jak siedmiosegmentowe diody LED, moduły LCD i panele alfanumeryczne. Dzięki wielu liniom I/O może odświeżać wyświetlacze lub wysyłać polecenia sterujące do układów scalonych sterowników.

• Interfejs klawiatury – Klawiatury matrycowe we wczesnych terminalach i komputerach osobistych były często skanowane za pomocą 8255. Konfigurując niektóre linie jako sterowniki wierszy, a inne jako czujniki kolumnowe, skutecznie wykrywał naciśnięcia.

• Sterowanie silnikiem – Silniki krokowe i silniki prądu stałego mogą być sterowane, gdy 8255 jest sparowany ze stopniami tranzystorowymi, układami Darlingtona lub mostkami H. To sprawiło, że był przydatny w robotyce, systemach pozycjonowania i projektach automatyzacji.

• Akwizycja danych – Po podłączeniu do przetworników ADC (przetworniki analogowo-cyfrowe) i przetworników cyfrowo-analogowych (DAC), model 8255 zapewnia kompletny interfejs do zadań pomiarowych i kontrolnych. Umożliwiło to mikroprocesorom przetwarzanie sygnałów w urządzeniach naukowych i przemysłowych.

• Automatyka przemysłowa – Model 8255 znalazł zastosowanie w sterowaniu sygnalizacją świetlną, logiką wind i panelami monitorowania procesów. Jego zdolność do niezawodnego zarządzania wieloma wejściami i wyjściami sprawiła, że jest to tanie rozwiązanie dla wbudowanych systemów sterowania.

• Retro-Computing – Klasyczne maszyny, takie jak komputery IBM PC/XT i MSX, wykorzystywały 8255 do łączenia urządzeń peryferyjnych. Był również używany w drukarkach i kartach rozszerzeń, ugruntowując swoje miejsce we wczesnej historii komputerów osobistych.

Porównanie chipów 8255 PPI z innymi PPI

8255 kontra 8155

Figure 4. 8255 vs. 8155

Intel 8155 łączy w sobie wiele funkcji w jednym pakiecie: oferuje mały blok statycznej pamięci RAM, programowalny timer i porty I/O ogólnego przeznaczenia. To sprawiło, że nadawał się do kompaktowych systemów, w których potrzebna była pamięć i kontrola czasu. W przeciwieństwie do tego, 8255 skupia się całkowicie na programowalnych wejściach / wyjściach, bez wbudowanej pamięci i taktowania. Jego prostsza konstrukcja sprawiła, że był tańszy i łatwiejszy do programowania, gdy aplikacja nie wymagała zintegrowanej pamięci RAM ani timerów.

8255 vs. 8259

Figure 5. 8255 vs. 8259

Programowalny kontroler przerwań 8259 służy zupełnie innemu celowi: zarządzaniu przerwaniami sprzętowymi, aby pomóc procesorowi szybko reagować na zdarzenia zewnętrzne. Podczas gdy 8255 obsługuje równoległy transfer danych I/O, 8259 koordynuje sygnały przerwań. W wielu systemach opartych na mikroprocesorach oba chipy były używane razem, 8255 do łączenia się z urządzeniami takimi jak klawiatury i wyświetlacze, a 8259 do zarządzania żądaniami przerwań generowanymi przez te urządzenia.

8255 kontra nowoczesne ekspandery GPIO

Figure 6. 8255 vs. Modern GPIO Expanders

Dzisiejsze systemy często wykorzystują ekspandery GPIO oparte na I²C lub SPI (takie jak MCP23017 lub PCF8574). Układy te zapewniają dodatkowe piny I/O z mniejszą liczbą połączeń, oszczędzając miejsce na płytce i zmniejszając liczbę pinów na procesorze. Działają one jednak szeregowo, co może być wolniejsze w porównaniu z bezpośrednim dostępem równoległym 8255. Podczas gdy 8255 wymaga więcej linii magistrali, jego równoległa struktura pozwala na szybsze transfery i czyni go bardzo cennym w środowiskach edukacyjnych, w których bezpośrednia kontrola poszczególnych pinów i zrozumienie taktowania magistrali są ważne dla nauki.

Rozwiązywanie problemów i typowe problemy

Praca z 8255 może czasami prowadzić do usterek systemu, jeśli zasady projektowe nie są dokładnie przestrzegane. Typowe problemy i środki zaradcze obejmują:

• Niezainicjowane porty – Po zresetowaniu wszystkie porty domyślnie przełączają się w tryb wprowadzania. Jeśli procesor nie wyśle odpowiedniego słowa sterującego, wyjścia pozostają nieaktywne lub zachowują się nieprzewidywalnie. Zawsze programuj rejestr kontrolny przed próbą odczytu lub zapisu danych.

• Nieprawidłowe słowa sterujące – Źle skonfigurowane słowa sterujące mogą przypisywać niewłaściwe kierunki lub tryby do portów, blokując oczekiwane sygnały. Porównuj wartości słów kontrolnych z tabelami arkusza danych, aby zapewnić prawidłowe ustawienia bitów.

• Awarie uzgadniania – W trybach 1 i 2 port C zapewnia potrzebne sygnały uzgadniania (STB, ACK, IBF, OBF). Brakujące, błędnie podłączone lub błędnie zinterpretowane połączenia prowadzą do wstrzymania lub utraty transferów. Dokładnie sprawdź zarówno okablowanie, jak i oczekiwania dotyczące poziomu logicznego podłączonych urządzeń.

• Wyjścia przeciążeniowe – Każdy pin portu może obsługiwać tylko małe prądy. Bezpośrednie sterowanie diodami LED jest możliwe za pomocą rezystorów, ale silniki, przekaźniki i lampy wymagają zewnętrznych stopni buforowych, takich jak układy tranzystorów lub układy scalone sterowników. Zignorowanie tego limitu grozi trwałym uszkodzeniem chipa.

• Konflikty magistrali – Jeśli wiele urządzeń próbuje sterować magistralą systemową w tym samym czasie, może dojść do uszkodzenia danych lub sprzętu. Odpowiedni arbitraż magistrali i użycie sygnałów zezwalających (RD', WR', CS') zapobiegają temu problemowi.

• Narzędzia do debugowania – gdy problemy nie ustępują, sprzęt testowy pomaga wyizolować usterki. Analizatory logiczne mogą potwierdzać sygnały czasowe i sterujące, podczas gdy oscyloskopy mogą sprawdzać, czy problem wynika z hałaśliwego okablowania sprzętowego, czy nieprawidłowej inicjalizacji oprogramowania.

Wnioski

Intel 8255 PPI pozostaje kamieniem węgielnym interfejsów mikroprocesorowych. Chociaż w dużej mierze zastąpiony przez nowoczesne ekspandery GPIO i wbudowane mikrokontrolery I/O, nadal służy jako aktywne narzędzie nauczania. Jego przejrzystość w demonstrowaniu równoległego przesyłania danych, konfiguracji portów i uzgadniania sprawia, że jest nieoceniony dla każdego.

Często zadawane pytania [FAQ]

Co to jest słowo kontrolne w 8255 i dlaczego jest ważne?

Słowo sterujące to 8-bitowa instrukcja wysyłana przez procesor w celu skonfigurowania portów i trybów 8255. Bez niego wszystkie porty pozostają w domyślnym stanie wejściowym. Określa, czy każdy port działa jako wejście, czy wyjście, i wybiera między trybami 0, 1, 2 lub Bit Set/Reset.

Czy 8255 może bezpośrednio sterować silnikami lub przekaźnikami?

Nie. Wyjścia 8255 mogą pobierać lub pobierać tylko kilka miliamperów, co jest niewystarczające dla silników lub przekaźników. Zewnętrzne obwody sterowników, takie jak układy tranzystorów lub mostki H, muszą być używane do bezpiecznej obsługi wyższego prądu.

Dlaczego model 8255 jest nadal używany w edukacji?

Model 8255 zapewnia przejrzysty, praktyczny sposób uczenia się o wejściach i wyjściach mikroprocesora, słowach sterujących i równoległym transferze danych. Jego prosta architektura pomaga uczniom zrozumieć podstawowe pojęcia przed przejściem do nowoczesnych mikrokontrolerów.

Co się stanie, jeśli użyjesz portu C w trybach uzgadniania?

W modach 1 i 2 niektóre linie portu C są zarezerwowane dla sygnałów uzgadniania (takich jak STB, ACK, IBF, OBF). Te piny nie mogą być używane jako we/wy ogólnego przeznaczenia w tych trybach, co należy uwzględnić, aby uniknąć konfliktów.

Czym 8255 różni się od nowoczesnych ekspanderów GPIO?

W przeciwieństwie do ekspanderów I²C/SPI, które wykorzystują komunikację szeregową, 8255 współpracuje z magistralą równoległą, umożliwiając szybsze transfery, ale wymagając większej liczby pinów. To sprawia, że 8255 zajmuje mniej miejsca, ale jest cenny dla faktycznego sterowania i nauki taktowania magistrali.