Sistem Minimum LCD dan Keypad

 

1. Tujuan    [kembali]

- Dapat mengerti cara menggunakan LCD dan Keypad 

- Dapat membuat rangkaian sistem minimum dengan menggunakan output berupa LCD dan input berupa keypad

 

2. Alat dan Bahan    [kembali] 

a) LCD

 

b) keypad

Keypad Matrix 4X4 3X4 di Lapak wibisono shop | Bukalapak 

c) IC 7473

Dynamic - IC 7473 - JK Flip-Flop

d) IC 8086

 

e)  IC 74154


IC KR134ID3 = SN74L154N / SN 74L154 N DIP24 USSR NOS (Lot of 5 pcs) | eBay 

f)  IC 8255A

 


 

3. Dasar Teori    [kembali]

a) LCD

LCD (Liquid Crystal Display) atau display elektronik adalah salah satu komponen elektronika yang berfungsi sebagai tampilan suatu data, baik karakter, huruf ataupun grafik. LCD (Liquid Cristal Display) adalah salah satu jenis display elektronik yang dibuat dengan teknologi CMOS logic yang bekerja dengan tidak menghasilkan cahaya tetapi memantulkan cahaya yang ada di sekelilingnya terhadap front-lit atau mentransmisikan cahaya dari back-lit. LCD merupakan lapisan dari campuran organik antara lapisan kaca bening dengan elektroda transparan indium oksida dalam bentuk tampilan seven-segment dan lapisan elektroda pada kaca belakang. Ketika elektroda diaktifkan dengan medan listrik (tegangan), molekul organik yang panjang dan silindris menyesuaikan diri dengan elektroda dari segmen. Lapisan sandwich memiliki polarizer cahaya vertical depan dan polarizer cahaya horisontal belakang yang diikuti dengan lapisan reflektor. Cahaya yang dipantulkan tidak dapat melewati molekul-molekul yang telah menyesuaikan diri dan segmen yang diaktifkan terlihat menjadi gelap dan membentuk karakter data yang ingin ditampilkan.13 Bentuk fisik dari LCD 20x4 ditunjukkan pada gambar di bawah

Fungsi Pin LCD (Liquid Cristal Display)

Pada LCD terdiri dari pin- pin sebagai berikut:

~ DB0 – DB7 adalah jalur data (data bus) yang berfungsi sebagai jalur komunikasi untuk mengirimkan dan menerima data atau instruksi dari mikrokontroler ke modul LCD.

~ RS adalah pin yang berfungsi sebagai selektor register (register sellect) yaitu dengan memberikan logika low (0) sebagai register perintah dan logika high (1) sebagai register data.

~ R/W adalah pin yang berfungsi untuk menentukan mode baca atau tulis dari data yang terdapat pada DB0 – DB7 yaitu dengan memberikan logika low (0) untuk fungsi read dan logika high (1) untuk mode write.

~ Enable (E), berfungsi sebagai Enable Clock LCD, logika 1 setiap kali pengiriman atau pembacaan data.

 

b) Keypad


Keypad adalah salah jenis input yang paling banyak digunakan. Sebetulnya keypad adalah saklar push-button yang disusun khusus, ada yang 3X3, 3X4, 4X4 atau susunan lainnya.

Cara kerja keypad sama dengan saklar push-button pada umumnya, bedanya alih-alih sendiri-sendiri, keypad bekerja berdasarkan baris dan kolom untuk mengurangi jumlah pin. Dengan baris dan kolom, sebuah keypad 4X4 yang terdiri dari 16 saklar hanya perlu 8 PIN (4 barir dan 4 kolom). Tanpa disusun baris dan kolom tentu kita akan membutuhkan 32 PIN untuk 16 tombol!

Namun demikian, kita harus melakukan sedikit kerja ekstra dengan 8 PIN ini, yaitu dengan cara menscan baris per baris kolom per kolom.

Bagaimana cara kerja keypad? Misalkan sebuah tombol pada baris-1 kolom-1 ditekan, bagaimana cara mendeteksinya?

caranya adalah dengan meng-scan semua baris dan kolom! Pertama semua pin baris (row) kita set sebagai output dan pin kolom sebagai input_pullup. Selanjutnya satu persatu baris set LOW. Untuk setiap baris yang diset LOW, satu per satu kolom kita baca INPUT nya. Jika ahasil pembacaan LOW maka kolom tersebut dalam posisi ditekan.

Dengan cara ini kita bisa sekaligus mendeteksi jika 2 atau lebih tombol ditekan.

Selanjutnya, kita tinggal tentukan nomor pin untuk baris 1,2,3.. dan kolom 1,2,3 ...

Proses scaning untuk membaca penekanan tombol pada matrix keypad 4×4 untuk mikrokontroler diatas dilakukan secara bertahap kolom demi kolom dari kolom pertama sampai kolom ke 4 dan baris pertama hingga baris ke 4. Misal kita asumsikan keypad aktif LOW (semua line kolom dan baris dipasang resistor pull-up) dan dihubungkan ke port mikrokontrolr dengan jalur kolom adalah jalur input dan jalur baris adalah jalur output maka proses scaning matrix keypad 4×4 diatas dapat dituliskan sebagai berikut.
·         Mengirimkan logika Low untuk kolom 1 (Col1) dan logika HIGH untuk kolom yang lain kemudian membaca data baris, misal tombol SW1 ditekan maka data baris pertama (Row1) akan LOW sehingga data baris yang dibaca adalah 0111, atau tombol yang ditekan tombol SW5 maka data pada baris ke 2 akan LOW sehingga data yang terbaca 1011, atau tombol SW9 yang ditekan sehingga data yang terbaca 1101, atau tombol SW13 yang ditekan maka data yang dibaca adalah 1110 dan atau tidak ada tombol pada kolom pertama yang di tekan maka data pembacaan baris akan 1111.
·         Mengirimkan logika Low untuk kolom 2 (Col2) dan logika HIGH untuk kolom yang lain kemudian membaca data baris, misal tombol SW1 ditekan maka data baris pertama (Row1) akan LOW sehingga data baris yang dibaca adalah 0111, atau tombol yang ditekan tombol SW5 maka data pada baris ke 2 akan LOW sehingga data yang terbaca 1011, atau tombol SW9 yang ditekan sehingga data yang terbaca 1101, atau tombol SW13 yang ditekan maka data yang dibaca adalah 1110 dan atau tidak ada tombol pada kolom pertama yang di tekan maka data pembacaan baris akan 1111.
·         Mengirimkan logika Low untuk kolom 3 (Col3) dan logika HIGH untuk kolom yang lain kemudian membaca data baris, misal tombol SW1 ditekan maka data baris pertama (Row1) akan LOW sehingga data baris yang dibaca adalah 0111, atau tombol yang ditekan tombol SW5 maka data pada baris ke 2 akan LOW sehingga data yang terbaca 1011, atau tombol SW9 yang ditekan sehingga data yang terbaca 1101, atau tombol SW13 yang ditekan maka data yang dibaca adalah 1110 dan atau tidak ada tombol pada kolom pertama yang di tekan maka data pembacaan baris akan 1111.
Mengirimkan logika Low untuk kolom 4 (Col4) dan logika HIGH untuk kolom yang lain kemudian membaca data baris, misal tombol SW1 ditekan maka data baris pertama (Row1) akan LOW sehingga data baris yang dibaca adalah 0111, atau tombol yang ditekan tombol SW5 maka data pada baris ke 2 akan LOW sehingga data yang terbaca 1011, atau tombol SW9 yang ditekan sehingga data yang terbaca 1101, atau tombol SW13 yang ditekan maka data yang dibaca adalah 1110 dan atau tidak ada tombol pada kolom pertama yang di tekan maka data pembacaan baris akan 1111.

c) IC 7473


IC Flip-flop adalah rangkaian digital yang digunakan untuk menyimpan satu bit secara semi permanen sampai ada suatu perintah untuk menghapus atau mengganti isi dari bit yang disimpan. Prinsip dasar dari flip-flop adalah suatu komponen elektronika dasar seperti transistor, resistor dan dioda yang di rangkai menjadi suatu gerbang logika yang dapat bekerja secara sekuensial. Salah satu jenis flip-flop adalah J-K flip-flop.

JK Flip-Flop sering disebut dengan JK FF induk hamba atau Master Slave JK FF karena terdiri dari dua buah flip-flop, yaitu Master FF dan Slave FF. Master Slave JK Slave JK FF ini memiliki 3 buah terminal input yaitu J, K dan Clock. Sedangkan IC yang dipakai untuk menyusun JK FF adalah 7473 yang mempunyai 2 buah JK Flip-Flop. Kelebihan JK FF terhadap FF sebelumnya yaitu JK FF tidak mempunyai kondisi terlarang artinya berapapun input yang diberikan asal ada clock maka akan terjadi perubahan pada output.



 d) IC 8086

8086 merupakan sebuah chip mikroprosesor 16-bit rancangan Intel pada tahun 1978 yang membangkitkan penggunaan arsitektur x86. Tidak lama kemudian, intel 8088 diperkenalkan dengan bus 8-bit external, yang memungkinkan penggunaan chipset yang murah. 

8086 dirancang berdasarkan intel 8080 dan intel 8085 dengan set register yang mirip, tetapi dikembangkan menjadi 16 bit. "Bus Interface Unit" memberikan rangkaian instruksi ke "Execution Unit" melalui sebuah prefetch queue 6 byte, jadi pemberian dan pelaksanaan dilakukan bersamaan- sebuah bentuk pipelining primitif (instruksi 8086 bervariasi dari 1 sampai 4 byte).

 

 


Catu daya dan sinyal frekuensi
Ini menggunakan suplai 5V DC pada VCC pin 40, dan menggunakan ground pada VSS pin 1 dan 20 untuk operasinya.

Sinyal jam
Sinyal jam disediakan melalui Pin-19. Ini memberikan waktu ke prosesor untuk operasi. Frekuensinya berbeda untuk versi yang berbeda, yaitu 5MHz, 8MHz dan 10MHz.

Alamat / bus data
AD0-AD15. Ini adalah 16 bus alamat / data. AD0-AD7 membawa data byte orde rendah dan AD8AD15 membawa data byte orde tinggi. Selama siklus clock pertama, ia membawa alamat 16-bit dan setelah itu ia membawa data 16-bit.

Alamat / status bus
A16-A19 / S3-S6. Ini adalah 4 bus alamat / status. Selama siklus clock pertama, ia membawa alamat 4-bit dan kemudian membawa sinyal status.

S7 / BHE
BHE adalah singkatan dari Bus High Enable. Ini tersedia di pin 34 dan digunakan untuk menunjukkan transfer data menggunakan bus data D8-D15. Sinyal ini rendah selama siklus jam pertama, setelah itu aktif.

Baca (RD)
Ini tersedia di pin 32 dan digunakan untuk membaca sinyal untuk operasi Baca.

Siap
Ini tersedia di pin 22. Ini adalah sinyal pengakuan dari perangkat I / O bahwa data ditransfer. Ini adalah sinyal tinggi aktif. Jika tinggi, ini menunjukkan bahwa perangkat siap mentransfer data. Ketika rendah, ini menunjukkan status tunggu.

SETEL ULANG
Ini tersedia di pin 21 dan digunakan untuk memulai kembali eksekusi. Ini menyebabkan prosesor segera menghentikan aktivitasnya saat ini. Sinyal ini aktif tinggi selama 4 siklus clock pertama untuk RESET mikroprosesor.

INTR
Ini tersedia di pin 18. Ini adalah sinyal permintaan interupsi, yang diambil sampelnya selama siklus clock terakhir dari setiap instruksi untuk menentukan apakah prosesor menganggap ini sebagai interupsi atau tidak.

NMI
Ini adalah singkatan dari non-maskable interrupt dan tersedia di pin 17. Ini adalah input edge triggered, yang menyebabkan permintaan interupsi ke mikroprosesor.

UJI
Sinyal ini seperti status menunggu dan tersedia di pin 23. Ketika sinyal ini tinggi, maka prosesor harus menunggu status IDLE, jika tidak eksekusi dilanjutkan.

MN / MX
Ini singkatan dari Minimum / Maximum dan tersedia di pin 33. Ini menunjukkan mode prosesor untuk beroperasi; bila tinggi, ia bekerja dalam mode minimum dan sebaliknya.

INTA
Ini adalah sinyal pengakuan interupsi dan id tersedia di pin 24. Ketika mikroprosesor menerima sinyal ini, ia mengakui interupsi.

ALE
Ini singkatan dari address enable latch dan tersedia di pin 25. Pulsa positif dihasilkan setiap kali prosesor memulai operasi apa pun. Sinyal ini menunjukkan ketersediaan alamat yang valid pada alamat / jalur data.

SARANG
Itu singkatan dari Data Enable dan tersedia di pin 26. Ini digunakan untuk mengaktifkan Transreceiver 8286. Transreceiver adalah perangkat yang digunakan untuk memisahkan data dari alamat / bus data.

DT / R
Ini adalah singkatan dari Data Transmit / Receive signal dan tersedia di pin 27. Ini menentukan arah aliran data melalui transreceiver. Ketika tinggi, data ditransmisikan keluar dan sebaliknya.

M / IO
Sinyal ini digunakan untuk membedakan antara memori dan operasi I / O. Ketika tinggi, ini menunjukkan operasi I / O dan ketika rendah menunjukkan operasi memori. Ini tersedia di pin 28.

WR
Ini singkatan dari sinyal tulis dan tersedia di pin 29. Ini digunakan untuk menulis data ke dalam memori atau perangkat output tergantung pada status sinyal M / IO.

HLDA
Ini adalah singkatan dari sinyal Hold Acknowledgement dan tersedia di pin 30. Sinyal ini mengakui sinyal HOLD.

MEMEGANG
Sinyal ini menunjukkan kepada prosesor bahwa perangkat eksternal meminta untuk mengakses bus alamat / data. Ini tersedia di pin 31.

QS1 dan QS0
Ini adalah sinyal status antrian dan tersedia di pin 24 dan 25. Sinyal ini memberikan status antrian instruksi. Kondisinya ditunjukkan pada tabel berikut



S0, S1, S2
Ini adalah sinyal status yang memberikan status operasi, yang digunakan oleh Pengontrol Bus 8288 untuk menghasilkan sinyal kontrol memori & I / O. Ini tersedia di pin 26, 27, dan 28. Berikut adalah tabel yang menunjukkan statusnya -

LOCK
Ketika sinyal ini aktif, ini menunjukkan kepada prosesor lain untuk tidak meminta CPU meninggalkan bus sistem. Ini diaktifkan menggunakan awalan LOCK pada instruksi apa pun dan tersedia di pin 29.

RQ / GT1 dan RQ / GT0
Ini adalah sinyal Request / Grant yang digunakan oleh prosesor lain yang meminta CPU untuk melepaskan bus sistem. Ketika sinyal diterima oleh CPU, kemudian mengirimkan pengakuan. RQ / GT0 memiliki prioritas lebih tinggi daripada RQ / GT1.

 

e) IC 74154

Keluaran IC 74154 ini bersifat active-low artinya input yang masuk bernilai high maka ic 74154 ini akan mati atau tidak aktif sedangkan ketika input yang masuk ke ic ini bernilai low maka ic ini active. karena active-low, saat masukan 0000, maka semua keluaran akan bernilai "1" (tidak ada yang aktif), saat masukan 0001, maka keluaran 1 (atau 0, tergantung penamaan keluaran dimulai dari 0 atau 1), akan bernilai 0 atau aktif, dan seterusnya.

 

f)  IC 8255A

PPI (Programmable Peripheral Interface) 8255 adalah IC yang dirancang untuk membuat port masukan dan keluaran paralel. Chip ini diproduksi oleh Intel Corporation dan dikemas dalam bentuk 40 pin dual in line package dan dirancang untuk berbagai fungsi antarmuka dalam mikroprosesor. IC ini mempunyai 24 bit I/O yang terorganisir menjadi 3 port 8 bit (24 jalur) dengan nama Port A, Port B, dan Port C. Masing-masing port ini dapat berfungsi sebagai input atau output, termasuk port C upper dan lower difungsikan sama atau beda. Fungsi ini terbentuk dari kondisi data bus yang deprogram/dirancang. Konfigurasi fungsi dari 8255 adalah diprogram oleh sistem software sehingga tidak diperlukan komponen gerbang logika eksternal untuk perangkat perpheral interface.

Di bawah ini menunjukkan diagram blok bagian dalam dari PPI 8255.

Gambar 1. Diagram Blok PPI 8255

          PPI 8255 memiliki buffer bus data dua arah, yang berarti dapat berfungsi baik sebagai port input maupun port output. Arah aliran data dapat dijelaskan dengan menggunakan pengaturan logika Read/Write. Secara mudah dapat diuraikan dengan tabel 1 berikut ini :

Tabel 1. Format Pembacaan dan Penulisan PPI 8255

PPI 8255 bekerja dalam tiga mode, yaitu :
a. Mode 0 : 
          Port A, Port B, dan Port C bekerja sebagai port I/O sederhana tanpa jabat tangan. Pada mode ini CPU sama sekali tidak memperhatikan status 8255. CPU mentransfer data tanpa mempersoalkan apa yang terjadi pada 8255. Port A dan Port B bekerja sebagai port 8 bit sedangkan Port C dapat dibuat bekerja dalam 8 bit atau berdiri sendiri dalam 4 bit lower dan 4 bit upper secara terpisah. Pemakaian mode 0 pada PPI 8255 secara diagram dapat digambarkan pada Gambar 2.

Gambar 2. Diagram Blok Operasi PPI 8255 Mode 0

b. Mode 1 : 
          Port A, Port B bekerja sebagai port I/O dengan jabat tangan menggunakan sebagian dari pena Port C. Saluran PC0, PC1, dan PC2 berfungsi sebagai saluran jabat tangan untuk Port B sedangkan Port A menggunakan saluran PC3, PC4, dan PC5 sebagai sinyal jabat tangan. PC6 dan PC7 dapat digunakan untuk saluran I/O. Diagram operasi 8255 pada mode 1 digambarkan pada Gambar 3.

Gambar 3. Diagram Blok Operasi PPI 8255 Mode 1

c. Mode 2 : 
          Hanya Port A dapat dibuat sebagai port I/O dua arah dengan jabat tangan. Port A dapat digunakan sebagai port untuk transfer data dua arah dengan jabat tangan. Ini artinya data dapat masuk atau keluar dari saluran yang sama. Mode ini mengembangkan sistem saluran (bus) ke mikroprosesor atau mentransfer byte data ke dan dari floppy disk controller. Pada mode 2 saluran PC3 sampai PC7 digunakan sebagai saluran jabat tangan untuk Port A. Bentuk operasi 8255 sebagai mode 2 digambarkan pada diagram Gambar 4.

Gambar 4. Diagram Blok Operasi PPI 8255 Mode 2

          Format control word PPI 8255 ditunjukkan pada Gambar 5 di bawah ini. Gambar 5.a digunakan untuk menformat control word berdasar pada mode kerja., sedangkan gambar 5.b digunakan untuk menformat control word untuk Port C pada operasi set/reset bit.

Gambar 5.a. Format Control Word Mode Set

Gambar 5.b. Format Control Word Port C Bit Set/Reset


4. Percobaan    [kembali]

 a) gambar rangkaian

b) prinsip kerja

     Prinsip kerja dari rangkaian di atas adalah, ketika tombol pada keypad ditekan maka nilai yang ditekan pada keypad akan ditampilkan pada LCD. Prinsipnya, pertama mikrokontroler mengirimkan alamat untuk mengakses I/O IC 8255 melewati A0-A15, kemudian masuk ke IC 74273 D0-D7. Alamat tersebut akan dilewatkan dari D0-D7 ke Q0-Q7 apabila sinyal kontrol alih dikeluarkan oleh pin ALE mikroprosesor dan diinverterkan sebelum diumpankan ke CLK IC 74273. Apabila telah aktif sinyal CLK, maka alamat akan ditahan di Q0-Q7 IC 74273. kemudian jika Q1-Q5 IC 74273 yang membawa alamat dari AD9-AD11 dihubungkan dengan decoder 74154. maka ketika nilai AD9-AD11 ini berlogika 0 semua dan E1 E1 IC ini juga berlogika 0, maka pin 0 IC 75154 akan berlogika nol yang kemudian pin ini dihubingkan dengan CS pada IC 8255. sehingga alamat yang dikirimkan adalah untuk akses IC 8255.
     Kemudian untuk mengirim data dari Mikroprosesor 8086 ke IC I/O 8255, pin AD0-AD7 mikroprosesor dihubungkan dengan pin D0-D7 IC 8255. PORTA IC 8255 menjadi output bagi mikroprosesor untuk kemudian dihubungkan dengan output keypad dan PORTB pada IC ini dihubungkan dengan input Keypad serta PORTC pada IC ini sebagai output yang dihubungkan dengan LCD

c) video simulasi

 d) Link Download

Rangkaian Simulasi - Download
Listing Program - Download
Video Simulasi - Download
File HTML - Download 

 

Tidak ada komentar:

Posting Komentar