PPI 8255 adalah suatu komponen parralel input/output port dalam satu chip yang dapat di program inpu/oututnya. PPI 8255 memiliki 24 pin I/O yang dibagi menjadi tiga port masing-masing 8 bit. Port - port tersebut adalah port A (PA0-PA7), port B (PB0-PB7) dan port C (PC0-PC7). Sebagai jalur untuk transfer data dari dan ke PPI 8255 disediakan saluran 8 bit bus data (D0-D7). Bus data dari PPI ini dapat dihubungkan langsung dengan bus data dari mikrokomputer.
Gambar PPI 8255
Keterangan:
1.Bus Alamat
PA-PA0 & PB7 - PB0 & PC7 - PC0 adalah Terminal I/O port.
2.Bus Data
D7 - D0 adalah Data Bus
3.Bus Kontrol: /CS, /WR, /RD dan RESET
CS (Chip Select) adalah Jika CS di set "0" maka PPI akan bekerja.
RD(Read) adalah Jika RD di set "0" maka CPU Komputer sedang membaca data dari PPI 8255.
WR(Write) adalah jika diset "0" maka CPU Komputer sedang menulis data ke PPI 8255.
4.A0 - A1 adalah Kombinasi mereka digunakan untuk memilih Port yang mana yang akan di gunakan.
5. Vcc dan GND adalah Terminal Tegangan Suplai.
Operasi Dasar PPI 8255 dapat di jelaskan dari gambar dibawah ini:
Penjelasan:
A1=0; A0=0; ==> memilih port A
A1=0; A0=1; ==> memilih port B
A1=1; A0=0; ==> memilih port C
A1=1; A0=1; ==> memilih Control Word ( CW )
ARSITEKTUR PPI 8255
Deskripsi Operasional PPI 8255
Kontrol Group A dan Group B
Kontrol group A mengontrol mode transfer data (dari atau ke) 8 bit port A dan 4 bit dari port C upper. Sedangkan kontrol group B mengontrol mode transfer data (dari atau ke) 8 bit port B dan 4 bit dari port C lower. Kontrol data yang dituliskan dari kontrol register akan menentukan karakteristik pengoperasian PPI. Pada gambar tersebut terlihat D5-D7 digunakan untuk mengontrol grup B. D7 menentukan port C lower (PC0-PC3), logic1 diprogram untuk masukan sedangkan logic 0 diprogram sebagai keluaran. D6 menentukan port B (PB0-PB7), logic1 diprogram untuk masukan sedangkan logic 0 diprogram sebagai keluaran. D5 digunakan untuk memilih mode port B yang diinginkan, yakni mode 0 atau mode 1. D1 sampai D4 digunakan untuk mengontrol grup A. D4 menentukan port C upper (PC4-PC7), logic 1 diprogram sebagai masukan dan logic 0 dipogram sebagai keluaran. D3 menentukan port A (PA0-PA7), logic1 diprogram untuk masukan sedangkan logic 0 diprogram sebagai keluaran. Sedangkan D1 dan D2 akan menentukan mode untuk group A; bila 00 berarti modus 0, bila 01 berarti modus 1, dan bila 1X berarti modus 2. Modus 0 dinamakan simple input/output. Bila diprogram sebagai keluaran, data yang ada di port keluaran akan ditahan, sedangkan bila diprogram sebagai port masukan, masukan ini tidak ditahan. Sedangkan D0 adalah modus set flag. D0 ini harus selalu berlogic 1 agar PPI dapat beroperasi.
Mode 0 - Basic Input/Output
Pada mode ini port A,Port B, dan Port C dapat di set sebagai input atau output. Mode ini paling sering digunakan dalam aplikasi kontrol.
Mode 1 - Strobe Input/Output.
Mode ini digunakan untuk membuat port input atau output parallel menggunakan sinyal handshaking dan sinyal interupsi. Port yang bisa digunakan adalah Port A dan PortB. sedangkan PortC sebagai sinyal handshaking.
Mode 2 - Bidirectional Bus
Mode ini digunakan untuk komunikasi dua arah dan port yang bisa dugunaka adalah PortA.
Mode - mode ini dapat dipilih dengan memberikan control word pada saat inisialisasi. Control word yang diberikan cukup sekali pada awal PPI ini diaktifkan. Selain itu selama Program sedang berjalan, PPI 8255 sewaktu - waktu dapat diubah mode operasinya dengan memberikan sebuah control word lagi. tersedianya fasilitas ini memungkinkan PPI 8255 dapat dimanfaatkan untuk melayani berbagai keperluan interfacing dengan program subroutin yag berada dalam sebuah sistem rangkaian.