Merancang Antarmuka ADC 8 bit dengan PPI 8255

Rancangan ADC 8 bit umumnya terbagi dalam 4 rangkaian yaitu pengkodean alamat, clock, Pengubah Analog ke Digital (ADC), dan Port I/O. Rancangan ini menerima alamat, data dan sinyal kontrol melalui port I/O dan mentransfer informasi ke/dari prosesor (komputer) melalui bus data.

1. Pendekodean Alamat
Rangkaian untuk pendekodean alamat dipilih sistem Pendekodean Alamat Dapat Dipilih, dengan pertimbangan jika ternyata alamat yang diset sama dengan alamat peralatan lain maka dengan mudah dapat diganti. Rangkaian pendekodean alamat ini menggunakan sebuah IC pembanding 8 bit SN 74LS688, tiga buah jumper dan sebuah larik tahanan yang terdiri dari 3 buah resistor, seperti terlihat pada gambar di bawah ini.

adc8bit1_dekoder
Penentuan alamat dilakukan dengan mengeset jumper, jika tidak di-jumper maka input yang bersangkutan (Qn) mendapat tegangan +5V melalui salah satu dari 3 buah resistor yang ada, sedang jika di-jumper maka input tersebut dihubungkan dengan GND dan resistor yang ada akan mencegah terjadinya hubungan singkat.

2. Clock
Sebagai pembangkit Clock (detak) ADC, digunakan IC 7402 yang terdiri atas 4 buah gerbang NOR. Dan untuk mendapatkan frekuensi clock digunakan komponen resistor sebesar 330 O dan kapasitor sebesar 1 nano, sehingga frekuensi clock-nya = 1/(4RC) = 75,76 KHz.

adc8bit2_clock

3. Pengubah Analog ke Digital (ADC)
Untuk pengubah analog ke digital digunakan piranti keluaran dari ADC 0809. Perhatikan gambar di bawah ini

adc8bit3_adc

Sesuai gambar di atas, cara kerja ADC 0809 bisa dijelaskan sebagai berikut. Mula-mula dipilih isyarat analog input mana yang akan dikonversi (IN0 s/d IN07), pemilihan ini dilakukan dengan cara memberikan kombinasi 3 bit alamat (CBA) yang sesuai kepada dekoder menurut tabel kebenaran di bawah ini

Input

C

B

A

IN0

0

0

0

IN1

0

0

1

IN2

0

1

0

IN3

0

1

1

IN4

1

0

0

IN5

1

0

1

IN6

1

1

0

IN7

1

1

1

Setelah itu, kombinasi ketiga bit tersebut dikunci/digrendel dengan memberikan isyarat ALE (Address Latch Enable). Selanjutnya isyarat input analog yang dipilih siap untuk dikonversi, yaitu dengan memberikan isyarat SC (Start Conversion). Setelah konversi selesai, maka ADC 0809 akan mengeluarkan isyarat EOC (End of Conversion). Untuk membaca hasil konversinya pada output, sebelumnya harus diberikan dahulu isyarat OE (Output Enable). Desain lengkap dari antarmuka ADC adalah seperti gambar di bawah ini

adc8bit4_adcfulldesign

3. Port I/O
Seperti gambar lengkap desain antar muka ADC di atas, sebagai port I/O digunakan PPI 8255 yang menyediakan 24 pin input/output yang dapat dikonfigurasikan dalam satu, dua, atau tiga port I/O. PPI 8255 dipakai dalam bentuk pin DIP, menggunakan catu daya tunggal +5 V. Pemakaian pin PPI 8255 dalam rancangan ADC ini dapat dilihat pada tabel pemakaian PPI 8255 di bawah ini

Port

I/O

Fungsi

A

PA0 – PA7

Output

Tidak dipakai

B

PB0 – PB7

Input

Input Data ADC 0809

C

PC0

Output

Mengaktifkan Saklar A

PC1

Output

Mengaktifkan Saklar B

PC2

Output

Mengaktifkan Saklar C

PC3

Output

Start/ALE ADC 0809

PC4

Input

EOC/OE

PC5 – PC7

Input

Tidak dipakai

Pemrograman dilakukan dengan format tertentu ke dalam register control word yang ada dalam PPI 8255 (perhatikan gambar di bawah ini)

adc8bit5_control

Dari Tabel pemakaian PPI 8255 dan gambar di atas maka inisialisasi PPI 8255 adalah seperti yang ditunjukkan berikut ini

D7

D6

D5

D4

D3

D2

D1

D0

1

0

0

0

1

0

1

0

Keterangan
- D0 : PC0 – PC3 (port Clowwer), logika 0 = output
- D1 : PB0 – PB7 (port B), logika 1 = input
- D2 : Mode untuk port B, logika 0 = Mode 0
- D3 : PC4 – PC7 (port Cupper), logika 1 = input
- D4 : PA0 – PA7 (port A), logika 0 = output
- D5, D6 : Mode untuk port A, logika 0 = Mode 0
- D7 : Mode Set Flag, logika 1 = Aktif

Secara ringkas operasi dasar PPI 8255 ditunjukkan dalam tabel di bawah ini

CS

RD

WR

A1

A0

Operasi

Tujuan

0

0

1

0

0

Baca data

Port A

0

0

1

0

0

Port B

0

0

1

1

0

Port C

0

1

0

0

1

Tulis data

Port A

0

1

0

0

0

Port B

0

1

0

1

0

Port C

0

1

0

1

1

Control Word Register

1

x

x

x

x

8255 tidak aktif

3 state

0

1

1

x

x

3 state

0

0

1

1

1

Kondisi ilegal

Berdasarkan inisialisasi PPI 8255 yang diberikan dan tabel operasi dasar PPI 8255 di atas serta desain pendekodean alamat diperoleh alamat untuk masing-masing port seperti tabel di bawah ini

A9

A8

A7

A6

A5

A4

A3

A2

A1

A0

Aktif

1

1

0

0

0

1

1

1

0

0

Port A

1

1

0

0

0

1

1

1

0

1

Port B

1

1

0

0

0

1

1

1

1

0

Port C

1

1

0

0

0

1

1

1

1

1

Kendali

Berikut penjelasannya: perhatikan kembali gambar desain pendekodean alamat, keluaran P mempunyai nilai sama dengan masukan Q yang bersesuaian. Dari sifat ini Nilai A9 (P7) sama dengan Q7, artinya A9 berlogika 1 karena pin Q7 terhubung dengan V­CC, demikian juga dengan A8. Sedangkan A5 – A7 berlogika 0 karena pin Q3 – Q5 terhubung dengan ground. Nilai A2 – A4 tergantung jumper pada input Q0, Q1, dan Q3. Jika kamu tidak memberikan jumper maka ketiganya berlogika 1, jika sebaliknya berlogika 0 (tabel di atas menunjukkan A2 – A4 berlogika 1, artinya tidak di-jumper). Selanjutnya untuk nilai A0 dan A1 didapat dari inisialisasi PPI 8255.

Jadi kesimpulannya port A dialamati dengan nilai (011 0001 1100)bin atau 31CH, port B dialamati dengan nilai (011 0001 1101) bin atau 31DH, port C dialamati dengan nilai (011 0001 1110)bin atau 31EH, port kendali dialamati dengan nilai (011 0001 1111)bin atau 31FH.

Alamat port kendali PPI yaitu : 31FH diisi dengan nilai 8AH (dari inisialisasi PPI 8255) atau dalam bahasa Delphi ditulis: Port[$31F] := $8A

Secara visual komponen utama yang dipasang dalam rancangan antarmuka ADC seperti gambar dibawah ini

adc8bit6_adcvisual

Nuwun..

Related Posts

  1. Antarmuka ADC
  2. Parallel Port
  3. Serial Port

About the Author

rumono Bukan siapa-siapa, hanya seorang ‘manusia’ yang pernah lahir di suatu tempat di Brebes, Jawa Tengah. Sangat gemar bacaan sejarah dunia masa lalu, sejarah perang dan pribadi-pribadi yang memberi warna sejarah dunia. Nge-game pun bisa dilakoni sampai berhari-hari asal ada hubungannya dengan sejarah dunia dan perang...