Perancangan Komputer Sederhana Berbasis Mikroprosesor 8085 Dengan Menggunakan Antarmuka Ppi 8255

14
PERANCANGAN KOMPUTER SEDERHANA BERBASIS MIKROPROSESOR 8085 DENGAN MENGGUNAKAN ANTARMUKA PPI 8255 ANTARMUKA PPI 8255 Gambaran Umum Jika hendak menghubungkan piranti peripheral seperti relay, motor, indikator atau sensor ke komputer maka dibutuhkan rangkaian tambahan yang disebut antarmuka atau interfacing. Rangkaian ini bertugas menyesuaikan piranti peripheral dengan komputer. Karena besarnya tegangan, arus dan daya piranti peripheral kebanyakan tidak sesuai dengan yang ada dalam komputer dan terutama karena kecepatan pengolahan sangat berbeda, maka besaran-besaran ini harus disesuaikan dengan bantuan antarmuka.PPI 8255 dipilih sebagai perantara karena selain bersifat parallel (sehingga pemrogramannya lebih sederhana daripada serial), antarmuka ini serbaguna. PPI 8255 terdiri dari 3 port 8 bit I/O sehingga total ada 24-bit I/O. Blok Diagram 8 bit data bus buffer (D0..D7) berhubungan dengan 3 state bi-directional 8 bit buffer (Port A, Port B dan Port C). Data yang diterima di data bus buffer akan disimpan di buffer (tempat 1

Transcript of Perancangan Komputer Sederhana Berbasis Mikroprosesor 8085 Dengan Menggunakan Antarmuka Ppi 8255

Page 1: Perancangan Komputer Sederhana Berbasis Mikroprosesor 8085 Dengan Menggunakan Antarmuka Ppi 8255

PERANCANGAN KOMPUTER SEDERHANA

BERBASIS MIKROPROSESOR 8085 DENGAN

MENGGUNAKAN ANTARMUKA PPI 8255

ANTARMUKA PPI 8255

Gambaran Umum

Jika hendak menghubungkan piranti peripheral seperti relay, motor,

indikator atau sensor ke komputer maka dibutuhkan rangkaian tambahan yang

disebut antarmuka atau interfacing. Rangkaian ini bertugas menyesuaikan piranti

peripheral dengan komputer. Karena besarnya tegangan, arus dan daya piranti

peripheral kebanyakan tidak sesuai dengan yang ada dalam komputer dan

terutama karena kecepatan pengolahan sangat berbeda, maka besaran-besaran ini

harus disesuaikan dengan bantuan antarmuka.PPI 8255 dipilih sebagai perantara

karena selain bersifat parallel (sehingga pemrogramannya lebih sederhana

daripada serial), antarmuka ini serbaguna. PPI 8255 terdiri dari 3 port 8 bit I/O

sehingga total ada 24-bit I/O.

Blok Diagram

8 bit data bus buffer (D0..D7) berhubungan dengan 3 state bi-directional 8

bit buffer (Port A, Port B dan Port C). Data yang diterima di data bus buffer akan

disimpan di buffer (tempat penyimpanan sementara) sebelum dijalankan oleh

microprocessor. Control Word dan status informasi juga ditranfer melalui data

bus buffer ini.

Group Control dibagi menjadi 2 group (Group A dan Group B). Group tersebut

menerima Read/Write control.

Group Control A digunakan:

- Mengatur Port A yang bisa diseting sebagai I/O latch/buffer.

- Mengatur 4 upper bit (C4..C7) Port C sebagai buffer input atau latch/buffer

output jika bekerja pada mode 0.

1

Page 2: Perancangan Komputer Sederhana Berbasis Mikroprosesor 8085 Dengan Menggunakan Antarmuka Ppi 8255

- Mengatur 4 upper bit (C4..C7) Port C sebagai Control Group A jika bekerja

pada mode 1 atau mode 2.

Group Control B digunakan:

- Mengatur Port B yang bisa diseting sebagai I/O latch/buffer.

- Mengatur 4 lower bit (C0..C3) Port C sebagai buffer input atau latch/buffer

output jika bekerja pada mode 0.

- Mengatur 4 upper bit (C0..C3) Port C sebagai Control Group B jika bekerja

pada mode 1 atau mode 2.

Gambar 1, Blok Diagram PPI 8255

2

Page 3: Perancangan Komputer Sederhana Berbasis Mikroprosesor 8085 Dengan Menggunakan Antarmuka Ppi 8255

Mode / Protokol Komunikasi

Mode 0 (Simple protokol) / Basic Input-Output

Transfer data yang tidak memerlukan sinyal khusus yang menandakan

apakah telah terjadi transfer data atau belum. Contoh transfer data adalah jika

akan dikeluarkan data ke peraga Led (1=Led hidup, 0=Led mati) atau untuk

memasukkan data dari thermostat sederhana, yang senantiasa ada dan siap

digunakan. Led dan thermostat tidak memerlukan sinyal-sinyal khusus yang

menandakan telah terjadi transfer data.

Mode 1 (Single handshaking protokol) / Strobed Input-Output

Transfer data semacam ini bisa dilihat pada printer. Cara kerjanya sebagai

berikut: Microprocessor mengeluarkan strobe signal ke printer yang artinya

pemberitahuan bahwa ada data untuk printer. Jika printer telah menerima data

maka printer memberikan acknowledge signal ke microprocessor yang artinya

printer sudah menerima data dan siap menerima kiriman berikutnya. Percakapan

antara microprocessor dan printer membentuk suatu protokol jabat-tangan

(handshake).

Mode 2 (Double handshaking protokol) / Bi-directional Bus

Transfer data semacam ini menggunakan aturan sebagai berikut:

Microprocessor sebagai pengirim mengeluarkan strobe low signal yang artinya

pertanyaan ke printer apakah sudah siap dikirimi data. Jika printer telah siap maka

printer sebagai penerima data mengeluarkan acknowledge high signal sebagai

pemberitahuan bahwa printer telah siap. Setelah ada persetujuan, microprocessor

mulai mengirim data yang ditandai dengan strobe high signal sebagai tanda mulai

pengiriman data. Jika data telah di terima, printer mengeluarkan acknowledge low

signal sebagai pemberitahuan bahwa data sudah diterima dan siap menerima data

berikutnya.

3

Page 4: Perancangan Komputer Sederhana Berbasis Mikroprosesor 8085 Dengan Menggunakan Antarmuka Ppi 8255

Gambar 2, Mode Komunikasi dan Antarmuka BUS

Control Word

PPI 8255 terdiri dari 3 port: Port A, Port B dan Port C yang dapat

diprogram untuk input maupun output. Untuk menggunakannya, terlebih dahulu

harus diinisialisasi (diidentifikasi) port-port itu sebagai output atau sebagai input

dan mengirimkannya ke control register.

Gambar 3, Diagram Control Word

4

Page 5: Perancangan Komputer Sederhana Berbasis Mikroprosesor 8085 Dengan Menggunakan Antarmuka Ppi 8255

Misalnya diinginkan Port A berlaku sebagai output dalam mode 0 dan Port

B serta Port C sebagai input mode 0. Control word untuk itu adalah :

Adapun susunan lengkap control word pada mode 0 adalah sebagai berikut :

Tabel 1. Konfigurasi Control Word PPI 8255

Base Address

5

Page 6: Perancangan Komputer Sederhana Berbasis Mikroprosesor 8085 Dengan Menggunakan Antarmuka Ppi 8255

Komputer berkomunikasi dengan peralatan yang terpasang dengnnya

dengan cara mengetahui alamat peralatan. Dengan membaca peta alamat I/O

komputer (lampiran Peta Alamat I/O komputer), maka bisa diketahui alamat mana

yang telah didefinisikan untuk peralatan tertentu dan alamat mana yang masih

kosong, sehingga tidak akan terjadi konflik antara modul 8255 yang akan

dipasang pada komputer dengan peralatan lain yang telah terpasang.

PERANCANGAN DAN IMPLEMENTASI SISTEM

Spesifikasi system :

CPU : Mikroprosesor 8085, 16 bit

Memori : 1 kBytes

Antarmuka : PPI 8255

Masukan : Keypad 4 digit

Keluaran : 4 digit seven segment

Software : Menampilkan karakter keypad yang ditekan ke 7 segment

Penentuan mode / Protokol Komunikasi

Untuk mode/protokol komunikasi, ditentukan dengan memakai Mode 0

(Simple protokol) / Basic Input-Output karena sudah mencukupi untuk

perancangan ini.

Penentuan Control Word

Semua port akan diinisialisasi sebagai output. Dari tabel 2.1, dapat

ditentukan control word yang akan digunakan yaitu 128 (Port A, Port B dan Port

C sebagai output).

Penentuan Base Address

Sedangkan untuk Base Address, digunakan alamat 280h – 2EFh. Cakupan

alamat ini mengandung 111 alamat yang mungkin.

Untuk modul PPI 8255 dibutuhkan 4 buah alamat, jadi bisa digunakan :

6

Page 7: Perancangan Komputer Sederhana Berbasis Mikroprosesor 8085 Dengan Menggunakan Antarmuka Ppi 8255

Base Address = 10h

Port A = Base Address = 10h

Port B = Base Address + 1 = 11h

Port C = Base Address + 2 = 12h

Control word = Base Address + 3 = 13h

Bobot paling rendah, bit A0 dan A1 dihubungkan langsung dengan masukan

alamat pada PPI 8255, sisanya harus di-decode. Hal ini dapat dilakukan dengan

memakai pembanding (komparator) 8 bit. Jadi alamat yang bersangkutan pada

komparator diperbandingkan dengan alamat seharusnya. Jika sama (P=Q), maka

PPI 8255 diaktifkan (CS aktif). Pengaturan base address bisa dilakukan dengan

mudah pada PPI 8255 Card. Pada modul PPI 8255 yang digunakan pada

perancangan ini memakai dip saklar dengan tingkat “ high” atau “low” sehingga

pemilihan alamat modul PPI 8255 dapat diatur melalui saklar ini.

Perancangan Rangkaian Buffer

Komputer hanya menggunakan operasi dua keadaan yaitu operasi 1 (high

atau setara 5 V) dan operasi 0 (low atau setara 0 V). Dari sini, untuk perancangan

yang akan dibuat, maka bisa dibuat suatu rumusan sebagai berikut :

- Apabila terjadi operasi 1, maka peralatan elektronik akan hidup (ON),

- Dan apabila terjadi operasi 0, maka peralatan elektronik akan mati (OFF).

Rangkaian Skematik

7

Page 8: Perancangan Komputer Sederhana Berbasis Mikroprosesor 8085 Dengan Menggunakan Antarmuka Ppi 8255

Gambar 4, Rangkaian skematik

8

Page 9: Perancangan Komputer Sederhana Berbasis Mikroprosesor 8085 Dengan Menggunakan Antarmuka Ppi 8255

Gambar 5, Rangkaian skematik (lanjutan)

Program scanning keypad dan menampilkan ke seven segment

9

Page 10: Perancangan Komputer Sederhana Berbasis Mikroprosesor 8085 Dengan Menggunakan Antarmuka Ppi 8255

; entry: hl pointer untuk menampilkan buffer; exit: key = scan code; -1 tidak ada tombol ditekan;scan: push h

push bpush dmvi c,4 ; untuk 4 digit 7-segment LEDmvi e,0 ; kode scanning digit pada dekoder

4-sampai-10 mvi d,0 ; posisi tombolmvi a,0ffh ; beri nilai -1 pada tombolsta key ; key = -1

scan1: mov a,eori 0f0h ; high nibble harus 1111out system_port_c ; digit aktif pertamamov a,m ; isi a dengan [hl]out system_port_b ; nyalakan segmentmvi b,0 ; delay untuk proses transisi

elektron

wait1: dcr bjnz wait1in system_port_a ; baca port masukkanmvi b,8 ; cek semua baris

shift_key: rar ; rotasi ke kanan melalui carryjc next_key ; jika carry = 1 lalu tidak ada tombol

ditekanpush pswmov a,dsta key ; simpan posisi tombolpop psw

next_key:inr d ; posisi tombol berikutnyadcr b ; sampai bergeser 8-bitjnz shift_keymvi a,0 ; kosongkan aout system_port_b ; matikan LEDinr e ; kode scan digit berikutnyainx h ; lokasi berikutnyadcr c ; kolom berikutnyajnz scan1pop dpop bpop hret

;---------- Alamat port I/O sistem PPI 8255 ---------------system_port_a: equ 10hsystem_port_b: equ 11hsystem_port_c: equ 12hsystem_port_control: equ 13h

10