- Bahan yang Dibutuhkan:
- Modul Tampilan Grafis Nokia 5110:
- Diagram Sirkuit:
- Program Arduino dan Bekerja:
Nama ikonik " Nokia 5110 " itu sendiri seharusnya membawa kenangan akan ponsel Nokia yang tangguh yang sangat populer di tahun 90-an. Model 5110 hadir dengan Tampilan Grafis yang cukup untuk bertindak sebagai layar tampilan ponsel saat itu. Layar ini mampu menampilkan segala sesuatu mulai dari karakter alfanumerik hingga grafik kecil yang merupakan semua yang diperlukan untuk ponsel. Saat bumi berputar, teknologi baru dengan layar sentuh mengkilap muncul dan tampilan ini tidak lagi digunakan. Tapi mudah-mudahan mereka dapat digunakan dalam aplikasi elektronik di mana grafik kecil harus ditampilkan dan menghindari pengeluaran uang untuk layar LCD besar. Jadi dalam tutorial ini kita akan belajar bagaimana menghubungkan LCD Grafis Nokia 5110 dengan Arduino dan membuatnya berfungsi.
LCD ini memiliki piksel hitam dan putih dengan dimensi 84 × 48. Mereka mungkin terlihat monoton tetapi masih dapat digunakan untuk menampilkan grafik yang layak untuk proyek Anda dan dapat dengan mudah digunakan dengan mikrokontroler seperti Arduino. Jadi mari kita mulai….!
Bahan yang Dibutuhkan:
- Arduino Board (versi apa saja)
- Layar Nokia 5110
- Menghubungkan kabel
Modul Tampilan Grafis Nokia 5110:
Ada dua jenis LCD Grafis yang tersedia di pasaran. Satu dengan bantalan solder di atas dan di bawah layar dan yang lainnya dengan bantalan solder hanya di bagian bawah layar. Yang kami gunakan termasuk tipe 2, di mana hanya ada bantalan di bawah layar. Kedua modul bekerja sama dan karenanya koneksinya sama untuk keduanya. Jadi terlepas dari modul apa itu, Anda dapat mengikuti tutorialnya.
Seperti yang dikatakan sebelumnya Nokia 5110 Graphical LCD memiliki 84 piksel horizontal dan 48 piksel vertikal. Ukuran tampilan total adalah 1,72 'x 1,72'. Modul ini memiliki 6 pin input yang dapat digunakan untuk menghubungkannya ke mikrokontroler apa pun melalui komunikasi SPI. IC antarmuka yang berkomunikasi antara tampilan dan Arduino adalah IC pengontrol tampilan PCD8544 Philips yang datasheetnya dapat ditemukan di sini. Namun jika Anda menggunakan Arduino untuk berkomunikasi dengan IC ini maka kami tidak perlu khawatir dengan datasheet karena ada pustaka yang siap diunduh dan digunakan. Modul yang kami gunakan di sini ditunjukkan di bawah ini.
Diagram Sirkuit:
Diagram rangkaian lengkap untuk menghubungkan LCD Grafis Nokia5110 dengan Arduino diberikan di bawah ini.
Modul tampilan memiliki 8 pin yang digunakan untuk mengatur komunikasi SPI dengan Arduino. Modul ini didukung dengan pin 3.3V dari papan Arduino. Perhatikan bahwa modul-modul ini bekerja pada logika 3.3V dan karenanya tidak mensuplai 5V ke pin Vcc pada monitor. Saya telah langsung menghubungkan Pin layar ke Arduino, meskipun LCD bekerja pada logika 3.3V dan Arduino pada logika 5V karena baru kemudian saya menemukan LCD berfungsi dengan baik. Anda dapat menggunakan pembagi tegangan untuk mengubah 5V menjadi 3,3V jika diperlukan, tetapi bagi saya itu hanya berfungsi tanpa konversi logika. Koneksinya cukup sederhana dan mudah dibuat. Setelah Anda selesai dengan koneksi pengaturan Anda akan terlihat seperti ini yang ditunjukkan di bawah ini.
Program Arduino dan Bekerja:
Ikuti langkah-langkah di bawah ini untuk memprogram Arduino Anda untuk Layar Nokia 5110. Langkah-langkahnya mengasumsikan bahwa Anda telah menginstal Arduino IDE dan terbiasa menggunakannya.
Langkah 1: Buka Arduino IDE di Komputer Anda dan pilih papan yang sesuai di bawah menu alat setelah menghubungkan Arduino Anda ke komputer Anda.
Langkah 2: Klik di sini untuk mengunduh Nokia 5110 Display Library oleh perpustakaan Adafruit dari repositori GitHub.
Langkah 3: Setelah file Zip diunduh, pilih Sketch -> Include Library -> Add.ZIP library dan telusuri ke lokasi tempat ZIP diunduh.
Catatan: Anda juga harus mengunduh inti Grafik Adafruit GFX yang melakukan semua lingkaran, teks, persegi panjang, dll. Anda bisa mendapatkannya dari https://github.com/adafruit/Adafruit-GFX-Library dan menginstalnya dengan cara yang sama.
Langkah 4: Sekarang buka program contoh dengan memilih File -> Contoh -> Adafruit PCD Nokia 5110 LCD Library -> pcdtest dan klik tombol unggah
Langkah 5: Setelah program diunggah, tekan tombol reset pada Arduino dan Anda akan melihat program contoh yang menampilkan semua animasi seperti yang ditunjukkan dalam video yang diberikan di akhir tutorial ini.
Anda dapat membaca program contoh untuk memahami berbagai fungsi bawaan yang dapat digunakan untuk melakukan berbagai desain grafis pada LCD. Tapi mari kita melangkah lebih jauh dan mencoba menampilkan Logo CircuitDigest pada layar LCD.
Sekarang buka gambar yang diperlukan di Paint dan ubah ukuran gambar. Ukuran gambar maksimum yang dapat kami gunakan untuk tampilan kami adalah 84 × 48.
Setelah mengubah ukuran gambar, simpan gambar sebagai bitmap (hitam dan putih) dengan menggunakan opsi save as di Paint. Untuk menampilkan gambar sebagai bitmap pada layar LCD kami, kami memerlukan perangkat lunak yang dapat mengubah gambar bitmap menjadi kode. Anda dapat mengunduh perangkat lunak dengan mengklik di sini. Setelah diunduh, unzip file tersebut dan klik "BitmapEncoder" untuk meluncurkan aplikasi. Buka gambar bitmap yang baru saja kita simpan menggunakan software ini untuk mendapatkan array nilai yang dikodekan. Anda dapat langsung menyalin nilai-nilai ini dan menempelkannya di array Arduino Anda. Nilai yang ditunjukkan oleh perangkat lunak untuk logo kami ditunjukkan di bawah ini
Seperti yang Anda lihat, array dimulai dengan nilai 48, 48 ini adalah ukuran gambar kami. Kita tidak boleh menambahkan ini ke dalam array kita. Jadi, hapus dua nilai pertama dan gunakan sisanya sebagai nilai array dalam program. Array akan terlihat seperti di bawah ini. Program lengkap diberikan di akhir halaman ini untuk referensi Anda.
static const unsigned char PROGMEM Logo = {B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00001111, B11111000, B00000000, B00000000, B00000000, B00000000, B00001111, B11111111, B00000000, B0000000011111, 000, B00000000, B0000000011111, B00000000 B11111111, B11000000, B00000000, B00000000, B00001110, B00111110, B00111111, B11110000, B00000000, B00000000, B00111110, B00111110, B10000000, B01111100, B00000000, B00000000, B01111100, B01111100, B0110000, B0000 B00001111, B00000000, B00000001, B11111000, B11111111, B00111111, B10000111, B10000000, B00000011, B11111000, B11111111, B11111111, B11000011, B11000000, B00000111, B11110001, B1111100011, B11, B1111100011, B1111, B1111111111, B1111, B1111111111, B11 B01100000, B00000000, B00000011, B11100000, B00001001, B11111100, B00000000, B00000000, B00000111,B11100000, B00011001, B11111110, B00000000, B00000000, B00000111, B11000000, B00000001, B11111111, B10000000, B00011111, B11111111, B11000111, B11100011, B11111111, B11111000, B10000111111, B111111, B11111111, B111111, B11111111, B11111111, B11111111, B11111111, B11111111 B11111111, B11111111, B11111100, B00111111, B11111111, B00011111, B11111111, B11111111, B11111100, B00111111, B11111110, B00111111, B00111111, B11111111, B11111110, B01111111, B11111110, B00111110, B00000000, B01111111, B11111100, B01111111, B11111100, B01111100, B11000000, B00000000, B00000000, B01111111, B11111100, B01111110, B10000000, B00000000, B00000000, B00000000, B00000000, B11111110, B00111111, B11111111, B11111110, B00000000, B00000001, B11111111, B11111111, B11111111, B11111110, B01111111, B11111111, B11111111, B11111111, B11111111, B11111110, B01111111, B11111111, B11111111, B11111111, B11111111, B11111110, B01111111, B11111111,B11000111, B11111111, B11111111, B11111110, B00111111, B11111111, B10000011, B11111110, B00000000, B00000000, B00111111, B11111111, B10110011, B11111000, B00000000, B00000000, B00111111, B11000000, B00000000, B00111111, B11000000, B00000000, B00111111, B11001111001, B1100000000, B11000011 B10000001, B11111111, B11111100, B00000000, B00011111, B11111000, B00000111, B11111111, B11111000, B00000000, B00000111, B11111110, B00011111, B11111111, B11111000, B00000000, B11110001111, B1100011, B1100001111, B1100011, B1111111111, B1111 B11111111, B11110000, B00000111, B11111000, B00001111, B11111111, B11000000, B00000000, B00000011, B11111100, B00100111, B11111111, B00000000, B00000000, B00000011, B11111111, B00110111, B110011, B0000, B00000011 B10000000, B00000000, B11111111, B11001111, B10000000, B11111111, B00000000, B00000000, B01111111,B11111111, B10110001, B11111110, B00000000, B00000000, B00011111, B11111111, B10110111, B11111100, B00000000, B00000000, B00001111, B11111111, B10000111, B11110000, B00000000, B00000000, B11000011, B110000, B00000000, B11000011, B110000, B0000 B11111111, B00000000, B00000000, B00000000, B00000000, B00001111, B11110000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000};
Sekarang untuk menampilkan bitmap ini kita harus menggunakan baris kode berikut. Dimana data sebelumnya di layar dihapus dan gambar bitmap baru ditulis.
display.clearDisplay (); display.drawBitmap (20, 0, Logo, 48, 48, 1); display.display ();
Tampilan garis.drawBitmap (20, 0, Logo, 48, 48, 1); menampilkan posisi, ukuran dan warna gambar bitmap. Sintaksnya dapat diberikan sebagai.
display.drawBitmap (X_Position, Y_Position, Name of Array, length of image, breadth of image);
Panjang dan lebar gambar dapat diperoleh dari dua elemen pertama dari array seperti yang dijelaskan sebelumnya. Ketika kode ini dijalankan kita akan mendapatkan bitmap yang ditampilkan di layar LCD kita seperti yang ditunjukkan di bawah ini.
Anda juga dapat menampilkan teks sederhana seperti yang ditunjukkan di bawah ini:
Harap Anda memahami tutorial dan membuat LCD Nokia 5110 Anda terhubung dengan Arduino. Dengan tampilan grafis ini, Anda dapat membuat banyak proyek yang memerlukan detail grafis kecil. Pekerjaan lengkap dapat ditemukan di video yang diberikan di bawah ini. Jika Anda menghadapi masalah dalam membuat ini berfungsi, Anda dapat menggunakan forum untuk memposting masalah Anda atau bagian komentar di bawah.