HelloWorld

LiquidCrystal kütüphanesi, Hitachi HD44780 sürücüsüyle uyumlu LCD ekranları kontrol etmenizi sağlar. Orada birçoğu var ve bunları genellikle 16 pinli arayüzle söyleyebilirsiniz.

Bu örnek çizim "Merhaba Dünya!" ve Arduino'nun sıfırlanmasından bu yana geçen süreyi saniye cinsinden gösterir.

16x2 LCD'de çizim çıktısı

LCD'ler paralel bir arayüze sahiptir, yani mikrodenetleyicinin ekranı kontrol etmek için aynı anda birkaç arayüz pimini manipüle etmesi gerekir. Arayüz aşağıdaki pimlerden oluşur:

LCD belleğinde veri yazdığınız yeri kontrol eden bir kayıt seçme (RS) pimi . Ekranda ne olduğunu tutan veri kaydını ya da LCD denetleyicisinin daha sonra ne yapacağınıza ilişkin talimatları arayacağı bir yönerge kaydını seçebilirsiniz.

Okuma modunu veya yazma modunu seçen bir Okuma / Yazma (R / W) pimi

Kayıtlara yazmayı sağlayan bir Etkinleştir pimi

8 veri iğnesi (D0 -D7) . Bu pinlerin durumları (yüksek veya düşük), yazarken bir kayıt defterine yazdığınız bitler veya okurken okuduğunuz değerlerdir.

Ayrıca, LCD'ye güç sağlamak, ekran kontrastını kontrol etmek ve LED'i açmak ve kapatmak için kullanabileceğiniz bir ekran kontrast pimi (Vo) , güç kaynağı pimleri (+ 5V ve Gnd) ve LED Arka Işık (Bklt + ve BKlt -) pimleri de vardır. sırasıyla arka ışık.

Ekranı kontrol etme işlemi, görüntülemek istediklerinizin görüntüsünü oluşturan verileri veri kayıtlarına koymayı, ardından talimatları talimat kaydına koymayı içerir. LiquidCrystal Kütüphanesi bunu sizin için basitleştirir, böylece düşük seviyeli talimatları bilmenize gerek yoktur.

Hitachi uyumlu LCD'ler iki modda kontrol edilebilir: 4 bit veya 8 bit. 4 bit modu Arduino'dan yedi G / Ç pini gerektirirken 8 bit modu 11 pim gerektirir. Ekranda metin görüntülemek için, her şeyi 4 bit modunda yapabilirsiniz, bu nedenle örnek 16x2 LCD'nin 4 bit modunda nasıl kontrol edileceğini gösterir.

Gerekli Donanım

  • Arduino veya Genuino Kurulu
  • LCD Ekran (Hitachi HD44780 sürücüsü ile uyumlu)
  • LCD ekran pinlerine lehimlemek için pin başlıkları
  • 10k ohm potansiyometre
  • 220 ohm direnç
  • bağlantı telleri
  • breadboard

Devre

LCD ekranı Arduino veya Genuino kartınıza bağlamadan önce, yukarıdaki resimde gördüğünüz gibi LCD ekranın 14 (veya 16) pim sayısı konektörüne bir pim başlık şeridi lehimlemenizi öneririz.
LCD ekranınızı kartınıza bağlamak için aşağıdaki pimleri bağlayın:

  • LCD RS pin - dijital pin 12
  • LCD Dijital pin 11'e pin etkinleştirme
  • LCD D4 pin - dijital pin 5
  • LCD D5 pin - dijital pin 4
  • LCD D6 pin - dijital pin 3
  • LCD D7 pin - dijital pin 2

Ayrıca, silecek (çıkış) LCD ekranlar VO pinine (pin3) sahip bir 10k potu + 5V ve GND'ye bağlayın. Ekranın arka ışığına güç sağlamak için 220 ohm'luk bir direnç kullanılır, genellikle LCD konnektörünün 15 ve 16 numaralı pinlerinde

Şematik

Kod


/*
  LiquidCrystal Library - Hello World

 Demonstrates the use a 16x2 LCD display.  The LiquidCrystal
 library works with all LCD displays that are compatible with the
 Hitachi HD44780 driver. There are many of them out there, and you
 can usually tell them by the 16-pin interface.

 This sketch prints "Hello World!" to the LCD
 and shows the time.

  The circuit:
 * LCD RS pin to digital pin 12
 * LCD Enable pin to digital pin 11
 * LCD D4 pin to digital pin 5
 * LCD D5 pin to digital pin 4
 * LCD D6 pin to digital pin 3
 * LCD D7 pin to digital pin 2
 * LCD R/W pin to ground
 * LCD VSS pin to ground
 * LCD VCC pin to 5V
 * 10K resistor:
 * ends to +5V and ground
 * wiper to LCD VO pin (pin 3)

 Library originally added 18 Apr 2008
 by David A. Mellis
 library modified 5 Jul 2009
 by Limor Fried (http://www.ladyada.net)
 example added 9 Jul 2009
 by Tom Igoe
 modified 22 Nov 2010
 by Tom Igoe

 This example code is in the public domain.

 http://www.arduino.cc/en/Tutorial/LiquidCrystal
 */

// include the library code:
#include 

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("hello, world!");
}

void loop() {
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);
  // print the number of seconds since reset:
  lcd.print(millis() / 1000);
}

See Also



  • Blink- Blok tarzı imlecin kontrolü.
  • Cursor- Alt çizgi stili imlecin kontrolü.
  • Display- Ekranda ne olduğunu kaybetmeden ekranı hızla boşaltın.
  • TextDirection- Metnin imleçten hangi yöne aktığını kontrol edin.
  • Scroll- Metni sola ve sağa kaydırın.
  • Serial display- Seri girişi kabul eder, görüntüler.
  • SetCursor- İmleç konumunu ayarlayın.
  • Autoscroll- Metni sağa ve sola kaydır.