Professional Documents
Culture Documents
Untuk mengirimkan data ke perangkat luar, P8088 dapat menggunakan latch (FlipFlop) untuk menyimpan data tersebut sampai ada data baru yang ingin dikirim P 8088. Sedangkan untuk menerima data, diperlukan pula suatu latch untuk menyimpan data, sampai P 8088 memiliki waktu untuk mengambil data tersebut. Sebuah latch hanya dapat digunakan untuk satu arah saja : output atau input. Untuk sistem yang kompleks, implementasi dengan PPI 8255 (Programmable Peripheral Interface) akan sangat memudahkan dan menyederhanakan sistem. Hal ini disebabkan karena PPI 8255 memiliki 3 latch yang dapat diprogram sesuka kita, apakah ingin dibuat sebagao input latch atau sebagai output latch. Skema konektor dari IC PPI 8255 adalah sebagai berikut :
PA3 PA2 PA1 PA0
read CS ground A1 A0 PC7 PC6 PC5 PC4 PC0 PC1 PC2 PC3 PB0 PB1 PB2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
8255
40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21
Terlihat pada skema diatas, PPI 8255 : 1. memiliki 3 port : port A (pin 1-4 dan 37-40), port B (pin 18-25), port C (pin 10-17) 2. masing-masing port tersebut dapat diprogram menjadi port input maupun sebagai port output atau keduanya. Dan jika dibutuhkan, port C dapat diprogram sebagai port kontrol 3. address line A0 (pin 8) dan A1 (pin 9) digunakan untuk memilih salah satu port yg ingin diakses.
Tugas Interface
D0 - D7
REGISTER DATA A
PA0 - PA7
Group A A0 A1
2 TO 4 DECODER
REGISTER CONTROL
Group B
REGISTER DATA B
PB0 - PB7
RD WR
Terlihat bahwa PPI 8255 memiliki 3 port I/O (setiap port memiliki lebar 8 bit). Ketiga port tersebut diberi nama port A, port B, dan port C. Register 8255 8255 menyediakan 4 buah register 8-bit : diakses saat A0 A1 0 0 0 1 1 0 1 1 keterangan register ini menyimpan data dari/untuk port A register ini menyimpan data dari/untuk port B register ini menyimpan data dari/untuk port C register untuk mengontrol kerja 3 register lainnya
Tugas Interface
Register data A, register data B, dan register kontrol hanya dapat diakses dalam format 8bit. Register data C dapat diakses dalam 2 nibble (2 x 4 bit) yaitu Lower C (C0 C3) dan Upper C (C4 C7) Programming 8255 Dengan mengirim suatu informasi selebar 1 byte ke register kontrol, kita dapat memprogram kerja dari port A, B, dan C. Informasi ini disebut juga dengan Control Word. Control Word A berfungsi untuk memprogram kerja setiap port, sedangkan Control Word B berfungsi untuk menSet atau meReset salah satu bit di Port C.
Group B
Tipe Port C Lower (PC0-PC3) 0 output 1 input Tipe Port B 0 output 1 input Mode Selector 0 mode 0 1 mode 1
Group A
Tipe Port C Upper (PC4-PC7) 0 output 1 input Tipe Port A 0 output 1 input Mode Selector 00 mode 0 01 mode 1 1X mode 2
Tugas Interface
Control Word B : menSet/Reset salah satu bit di Port C saat 8255 bekerja pada mode
0 X X X D3 D2 D1 D0
Set / Reset selected bit in Port C below 0 reset 1 set Select a specific bit in Port C 000 select Port C bit 0 001 select Port C bit 1 010 select Port C bit 2 011 select Port C bit 3 100 select Port C bit 4 101 select Port C bit 5 110 select Port C bit 6 111 select Port C bit 7
Karena masing-masing port dapat diprogram sebagai buffer input maupun output, maka untuk memudahkan, 8255 didesain khusus untuk menerima 3 mode kerja : 1. mode 0 : Basic I/O pada mode ini setiap port bekerja secara independen. masing-masing dapat bekerja sebagai input atau output.
MODE 0 - 8255
Port B
8 lines 4 lines
Port C
4 lines
Port A
8 lines
I/O
I/O
I/O
PB7 - PB0
PC7 - PC4
PC3 - PC0
PA7 - PA0
Control Word A : D7 1 D6 0 D5 0 D4 A D3 CU D2 0 D1 B D0 CL
Tugas Interface
A = 0 (port A sbg Output); B = 0 (port B sbg Output); CU = 0 (Port C Upper sbg output); CL = 0 (Port C Lower sbg Output) 2. mode 1 : Strobe I/O
MODE 1 - 8255
Port B
8 lines
Port C
Port A
8 lines
I/O
I/O
PB7 - PB0
PC7 - PC4
PC3 - PC0
PA7 - PA0
Control Word A : D7 1 D6 0 D5 1 D4 A D3 CU D2 1 D1 B D0 CL
A = 0 (port A sbg Output); B = 0 (port B sbg Output); CU = 0 (Port C Upper sbg output); CL = 0 (Port C Lower sbg Output) Control Word B : D7 1 a 0 0 0 0 1 1 1 1 D6 D5 D4 dont care b 0 0 1 1 0 0 1 1 c 0 1 0 1 0 1 0 1 D3 a D2 b D1 c D0 0/1
Tugas Interface
MODE 2 - 8255
Port B
8 lines
Port C
Port A
8 lines
Bidirectional
I/O
Control
Bidirectional
PB7 - PB0
PC7 - PC5
PC4 - PC0
PA7 - PA0
Control Word A : D7 1 D6 1 D5 X D4 A D3 CU D2 1 D1 B D0 CL
A = 0 (port A sbg Output); B = 0 (port B sbg Output); CU = 0 (Port C Upper sbg output); CL = 0 (Port C Lower sbg Output) Control Word B : D7 1 a 0 0 0 0 1 1 1 1 D6 D5 D4 dont care b 0 0 1 1 0 0 1 1 c 0 1 0 1 0 1 0 1 D3 a D2 b D1 c D0 0/1
Tugas Interface