Belajar Mikrokontroler - Penjelasan LCD dan cara penggunaannya - Arduino #6

Belajar Mikrokontroler - Penjelasan LCD dan cara penggunaannya - Arduino #6

Pada kesempatan ini ngeutrend akan menunjukkan bagaimana Anda dapat dengan mudah menghubungkan LCD karakter, baik 16x2 atau 20x4.

LCD Karakter vs. LCD Grafis

Ada ratusan jenis LCD yang berbeda, yang akan kami bahas di sini adalah LCD karakter. LCD karakter ideal untuk menampilkan teks. Mereka juga dapat dikonfigurasi untuk menampilkan ikon kecil tetapi ikon harus hanya berukuran 5x7 piksel atau lebih (sangat kecil!)

Berikut adalah contoh LCD karakter, 16 karakter dengan 2 baris:


Jika Anda melihat lebih dekat, Anda dapat melihat persegi panjang kecil tempat karakter ditampilkan. Setiap persegi panjang adalah kisi piksel. Bandingkan ini dengan LCD grafis seperti berikut:


LCD grafis memiliki satu kotak besar piksel (dalam hal ini 128x64 piksel) - Ini dapat menampilkan teks tetapi yang terbaik dalam menampilkan gambar. LCD grafis cenderung lebih besar, lebih mahal, sulit digunakan dan membutuhkan lebih banyak pin karena kerumitan yang ditambahkan.

Tutorial ini bukan tentang LCD grafis. Ini hanya tentang LCD teks / karakter!

Jenis LCD karakter

Oke sekarang kita sudah jelas tentang jenis LCD yang kita bicarakan, saatnya untuk juga melihat berbagai bentuknya.


Meskipun mereka hanya menampilkan teks, mereka datang dalam berbagai bentuk: dari kiri atas kami memiliki 20x4 dengan teks putih pada latar belakang biru, 16x4 dengan teks hitam pada hijau, 16x2 dengan teks putih pada biru dan 16x1 dengan teks hitam pada abu-abu.


Untuk bagian tutorial ini, kita akan menggunakan LCD dengan satu strip 16 pin seperti yang ditunjukkan di atas. Ada juga beberapa dengan 2 baris 8 pin seperti:

Memasang kabel LCD Karakter

Memasang Pin Header


Oke, sekarang Anda memiliki LCD, Anda juga memerlukan beberapa hal lainnya. Pertama adalah potensiometer 10K. Ini akan memungkinkan Anda menyesuaikan kontras. Setiap LCD akan memiliki pengaturan kontras yang sedikit berbeda sehingga Anda harus mencoba mendapatkan semacam pemangkas. Anda juga memerlukan beberapa header 0,1 "- panjang 16 pin.


Jika tajuk terlalu panjang, potong / jepret saja!

Selanjutnya Anda harus menyolder header ke LCD. Anda harus melakukan ini, tidak boleh hanya mencoba 'menekan pas' LCD!

Juga hati-hati untuk tidak menggunakan terlalu banyak panas, atau Anda bisa melelehkan papan tempat memotong roti yang mendasarinya. Anda dapat mencoba 'memaku' pin 1 dan pin 16 dan kemudian melepaskan dari papan tempat breadboarduntuk menyelesaikan titik solder yang tersisa.


Cara termudah yang kami ketahui untuk melakukan ini adalah menempelkan header ke papan tempat breadboard dan kemudian meletakkan LCD di atas saat menyolder. ini membuatnya tetap stabil.

Daya dan Lampu Latar

Hubungkan LCD Anda ke papan tempat breadboard.


Sekarang berikan tegangan ke breadboard. Hubungkan + 5V ke rel merah, dan Ground ke rel biru.


Selanjutnya kita akan menghubungkan lampu latar untuk LCD. Hubungkan pin 16 ke ground dan pin 15 ke + 5V. Pada sebagian besar LCD (termasuk yang dari Adafruit), LCD menyertakan resistor seri untuk lampu latar LED.


Jika Anda kebetulan memiliki resistor yang tidak menyertakan resistor, Anda harus menambahkan satu antara 5V dan pin 15. Untuk menghitung nilai resistor seri, cari arus lampu latar maksimum dan penurunan tegangan lampu latar khas dari data lembar. Kurangi penurunan tegangan dari 5 volt, lalu bagi dengan arus maksimum, lalu bulatkan ke nilai resistor standar berikutnya. Misalnya, jika penurunan tegangan lampu latar tipikal 3.5v dan arus pengenal 16mA, maka resistor harus (5 - 3.5) /0.016 = 93,75 ohm, atau 100 ohm jika dibulatkan ke nilai standar. Jika Anda tidak dapat menemukan lembar data, maka sebaiknya aman menggunakan resistor 220 ohm, meskipun nilai setinggi ini dapat membuat lampu latar agak redup.

Hubungkan Arduino ke daya, Anda akan melihat lampu latar menyala.

Perhatikan bahwa beberapa LCD berbiaya rendah tidak dilengkapi dengan lampu latar. Jelas dalam hal ini Anda harus terus berjalan.

Rangkaian mengatur Kontras

Selanjutnya, mari tempatkan potensiometer , itu berada di samping dekat pin 1.


Hubungkan satu sisi pot ke + 5V dan sisi lainnya ke Ground (tidak masalah sisi mana yang berjalan). Bagian tengah pot (wiper) terhubung ke pin 3 LCD.


Sekarang kita akan memasang logika LCD - ini terpisah dari lampu latar! Pin 1 ground dan pin 2 adalah + 5V.


Sekarang nyalakan Arduino, Anda akan melihat lampu latar menyala (jika ada), dan Anda juga dapat memutar panci untuk melihat garis persegi panjang pertama.


Sekarang nyalakan Arduino, Anda akan melihat lampu latar menyala (jika ada), dan Anda juga dapat memutar pot untuk melihat garis persegi panjang pertama muncul. Ini berarti Anda telah mendapatkan logika, lampu latar, dan kontras semuanya bekerja dengan baik. Jangan melanjutkan kecuali Anda sudah mengerti!

Wiring

Sekarang kita akan menyelesaikan pemasangan kabel dengan menghubungkan jalur data. Ada 11 jalur bus: D0 hingga D7 (8 jalur data) dan RS, EN, dan RW. D0-D7 adalah pin yang memiliki data mentah yang kami kirim ke layar. Pin RS memungkinkan mikrokontroler memberi tahu LCD apakah ia ingin menampilkan data itu (seperti dalam, karakter ASCII) atau apakah itu byte perintah (seperti, mengubah posisi kursor). Pin EN adalah baris 'enable' yang kami gunakan untuk memberi tahu LCD ketika data siap untuk dibaca. Pin RW digunakan untuk mengatur arah - apakah kita ingin menulis ke layar (umum) atau membaca darinya (kurang umum)

Kabar baiknya adalah tidak semua pin ini diperlukan untuk kita sambungkan ke mikrokontroler (Arduino). RW misalnya, tidak diperlukan jika kita hanya menulis ke layar (yang merupakan hal paling umum untuk dilakukan) sehingga kita dapat 'menyambungkannya' ke ground. Ada juga cara untuk berbicara dengan LCD hanya dengan menggunakan 4 pin data, bukan 8. Ini menghemat 4 pin! Mengapa Anda ingin menggunakan 8 ketika Anda bisa menggunakan 4? Kami tidak 100% yakin tetapi kami pikir dalam beberapa kasus lebih cepat menggunakan 8 - butuh dua kali lebih lama untuk menggunakan 4 - dan kecepatan itu penting. Bagi kami, kecepatan tidak begitu penting jadi kami akan menghemat beberapa pin!

Jadi untuk rekap, kita membutuhkan 6 pin: RS, EN, D7, D6, D5, dan D4 untuk berbicara ke LCD.

Kami menggunakan library LiquidCrystal untuk komuniaksi dengan LCD sehingga banyak pekerjaan pengaturan pin yang mengganggu dan semacamnya sudah diurus. Hal bagus lainnya tentang library ini adalah Anda dapat menggunakan pin Arduino apa pun untuk terhubung ke pin LCD. Jadi setelah Anda membaca panduan ini, Anda akan merasa mudah untuk menukar pin jika perlu.


Seperti yang disebutkan, kami tidak akan menggunakan pin RW, jadi kami dapat mengikatnya ke ground. Itu pin 5 seperti yang ditunjukkan di sini.

Berikutnya adalah pin RS # 4. Kami akan menggunakan kabel coklat untuk menghubungkannya ke pin digital Arduino # 7.


Selanjutnya adalah pin EN # 6, kita akan menggunakan kabel putih untuk menghubungkannya ke Arduino digital # 8.


Sekarang kita akan memasang pin data. DB7 adalah pin # 14 pada LCD, dan terhubung dengan kabel oranye ke Arduino # 12.


Berikutnya adalah 3 jalur data yang tersisa, DB6 (pin # 13 kuning) DB5 (pin # 12 hijau) dan DB4 (pin # 11 biru) yang kita hubungkan ke Arduino # 11, 10 dan 9.


Anda harus memiliki empat pin 'celah' pada LCD antara 4 kabel bus data dan kabel kontrol.

Inilah yang akan Anda miliki di meja Anda.


dipasar elektronik juga sudah ada yang menjual LCD shieldnya, dimana lcd ini sudah praktis tinggal pasang ke board arduino UNO tanpa perlu merangkai nya seperti rangkaian diatas.


Kode Arduino

Sekarang kita harus mengunggah beberapa kode program ke Arduino untuk komunikasi ke LCD. Untungnya library LiquidCrystal sudah terpasang. Jadi kita hanya perlu memuat salah satu contoh dan memodifikasinya untuk pin yang kita gunakan.

berikut kodenya :

#include <LiquidCrystal.h>
const int rs=8, en=9, d4=4, d5=5, d6=6, d7=7;
LiquidCrystal lcd (rs, en, d4, d5, d6, d7);

void setup ()
{
  lcd.begin(16,2);
  lcd.setCursor(2,0);
  lcd.print("Welcome back");
  lcd.setCursor(2,1);
  lcd.print("to my channel");
  delay (3000);
  lcd.clear();
  delay(100);
  }

void loop ()
{
  lcd.setCursor(1,0);
  lcd.print(" Jangan Lupa ");
  lcd.setCursor(3,1);
  lcd.print("Subscribe");
  delay (3000);
  lcd.clear();
  delay (500);
  lcd.setCursor(2,0);
  lcd.print(" Channel YT");
  lcd.setCursor(0,1);
  lcd.print("gigih pamungkas");
  delay(4000);
  lcd.clear();
  delay(500);
  }

Selengkapnya bisa dilihat di video berikut ini!


Selamat mencoba...


Post a Comment

Previous Post Next Post

Contact Form