Isi kandungan:

Gunakan LCD 16x2 Dengan I2C: 4 Langkah
Gunakan LCD 16x2 Dengan I2C: 4 Langkah

Video: Gunakan LCD 16x2 Dengan I2C: 4 Langkah

Video: Gunakan LCD 16x2 Dengan I2C: 4 Langkah
Video: Cara Menggunakan LCD 16x2 dan I2C– Tutorial Arduino Mudah 2024, November
Anonim
Gunakan LCD 16x2 Dengan I2C
Gunakan LCD 16x2 Dengan I2C
Gunakan LCD 16x2 Dengan I2C
Gunakan LCD 16x2 Dengan I2C
Gunakan LCD 16x2 Dengan I2C
Gunakan LCD 16x2 Dengan I2C

Dalam salah satu Instructable saya sebelumnya, saya menunjukkan kepada anda cara menyambungkan dan menghubungkan antara muka LCD ke Arduino Uno dan memaparkan nilai di atasnya. Tetapi seperti yang diperhatikan, terdapat banyak sambungan dan jika projek itu mula menjadi tidak kemas kerana terlalu banyak kabel.

Dalam Instructable ini, saya akan menunjukkan kepada anda cara menyambungkan LCD ke I2C, yang hanya akan mempunyai 4 pin untuk mengawal dan menggunakan LCD. Oleh itu, mari kita mulakan.

Langkah 1: Komponen Diperlukan

Komponen Diperlukan
Komponen Diperlukan
Komponen Diperlukan
Komponen Diperlukan
Komponen Diperlukan
Komponen Diperlukan

Untuk projek ini, anda memerlukan:

  • Arduino Uno
  • LCD 16x2
  • I2C untuk LCD 16x2
  • Kabel Hook-Up

Dengan semua ini, mari masuk ke bahagian sambungan.

Langkah 2: Sambungan

Sambungan
Sambungan
Sambungan
Sambungan
Sambungan
Sambungan
Sambungan
Sambungan

Rujuk gambar dan buat sambungannya. Cukup mudah, anda hanya perlu memasang I2C di port LCD dan memasangnya ke tempatnya. Kemudian sambungkan pin SCL ke pin A4 di Arduino dan pin SDA ke pin A5 di Arduino.

Saya tidak menyolder I2C kerana saya sudah memasang pin header pada LCD. Tetapi saya akan mencadangkan pematerian I2C pada LCD

Langkah 3: Kod

Terdapat perpustakaan induk LCD I2C yang termasuk dalam Arduino IDE. Tetapi ada sedikit masalah dengan kod di dalamnya. Semua contoh di perpustakaan ini menganggap alamat lalai I2C sebagai 0x27. Oleh itu, pertama kita harus mengetahui apa alamat I2C kita. Kita boleh melakukan ini dengan menggunakan kod pengimbas I2C. Setelah kita mempunyai alamat I2C, kita boleh mengganti nilai ini dalam kod contoh dan mula menggunakannya.

Kod Pengimbas I2C:

#sertakan

batal persediaan () {Wire.begin (); Serial.begin (9600); sementara (! bersiri); // tunggu monitor bersiri Serial.println ("\ nI2C Scanner"); } gelung void () {ralat bait, alamat; int nPerisian; Serial.println ("Mengimbas …"); nPerisian = 0; untuk (address = 1; address <127; address ++) {// The i2c_scanner menggunakan nilai pengembalian // the Write.endTransmisstion untuk melihat apakah // suatu peranti mengakui ke alamat tersebut. Wire.beginTransmission (alamat); ralat = Wire.endTransmission (); if (error == 0) {Serial.print ("Peranti I2C dijumpai di alamat 0x"); jika (alamat <16) Serial.print ("0"); Serial.print (alamat, HEX); Serial.println ("!"); nPerisian ++; } lain jika (ralat == 4) {Serial.print ("Kesalahan tidak diketahui di alamat 0x"); jika (alamat <16) Serial.print ("0"); Serial.println (alamat, HEX); }} if (nDevices == 0) Serial.println ("Tidak dijumpai peranti I2C / n"); lain Serial.println ("selesai / n"); kelewatan (5000); // tunggu 5 saat untuk imbasan seterusnya}

Contoh Kod (Untuk memaparkan watak yang dimasukkan dalam Serial Monitor):

#sertakan #sertakan

LiquidCrystal_I2C lcd (0x3F, 20, 4); // tetapkan alamat LCD ke 0x27 untuk paparan 16 bar dan 2 baris

persediaan tidak sah ()

{lcd.init (); // inisialisasi lcd lcd.backlight (); Serial.begin (9600); }

gelung kosong ()

{// apabila watak tiba di port bersiri… jika (Serial.available ()) {// tunggu sebentar sehingga keseluruhan mesej tiba kelewatan (100); // kosongkan skrin lcd.clear (); // baca semua watak yang ada semasa (Serial.available ()> 0) {// paparkan setiap watak ke LCD lcd.write (Serial.read ()); }}}

Langkah 4: Hasilnya

Hasilnya
Hasilnya
Hasilnya
Hasilnya

Setelah memuat naik kod, anda sudah bersedia untuk pergi. Untuk Instructable ini saya telah mengambil contoh Kod Cetakan Bersiri. Jadi sekarang setelah memuat naik kod, buka Serial Monitor dan taip perkataan dan klik "kirim". Sekarang anda akan melihat nilai ini dipaparkan di LCD.

Disyorkan: