×

DEVANTECH LCD05 I2C Serial Module 16×2 or 20×4 & Matrix Keypad 3×4

Rp110.000

20 in stock




📍 Self Pickup : Ciledug, Kota Tangerang
Produk juga tersedia di :
🛍️ Shopee | 🛍 ️Tokopedia | Sewa | 💬 WhatsApp
Layanan tersedia :
👨‍🏫 Tutorial | 👥 Konsultasi | 👨‍🔧 Toy Repair <style>

Description

Training penggunaan dasar Modul LCD05

LCD05-25-image-card
Serial / I2C for LCD 16×2 or 20×4 & Keypad 0-9 * #

Serial/I2C Mode selection
A single jumper link is used to select Serial or I2C mode. When the jumper is present (factory default) the module is in serial mode. When the jumper is removed the module is in I2C mode. The mode jumper is only checked as part of the power-up sequence, so make sure the display is off before changing modes. If you change the link position while the module is powered, nothing will change until next time you switch on.

FIFO
Because the I2C communications operate faster than the display can accept data, all commands and text you send to the display are placed in the FIFO (First In, First Out) buffer. This data is sent to the display as fast as it will accept it. The FIFO is 100 bytes in length and the number of free bytes can be returned in either mode. When sending lots of text to the display, you should check the number of free bytes so you don’t overflow the buffer. If the buffer does overflow, the excess bytes are ignored. The FIFO buffer exists in Serial mode too, but at 9600 the display is fast enough and you are unlikely to need to check it.

I2C Operation
I2C Bus
The I2C display is located on the I2C bus at an address of 0XC6. The SCL and SDA lines should have pull-up resistors on them somewhere on the bus. You only require 1 pair of resistors for the whole I2C bus, not specifically for the LCD05. They are normally on the master controller and you may already have them. If not, anything between 1k8 and 10k should work. I recommend 1k8 for best noise immunity. I2C mode is compatible with SMbus voltage levels.

I2C Registers
The LCD05 has four registers, three being read only information registers. Register 0 is a dual purpose register, when written, it is the command register where all of the instructions from the commands section should be sent. When read it returns the number of free bytes in the FIFO buffer.

Modul LCD05 ini secara default digunakan untuk LCD 20×4, jika kita hendak pergunakan dengan LCD16x4 maka cukup merubah dengan menggunakan perintah I2C command 24 (Decimal) atau 0x18 (Hexadesimal) kemudian diikuti nilai Byte sesuai LCD karakter, perhatikan tabel berikut ini :

Modul LCD ini sudah tersedia instruksi/ command yang dapat kita pakai untuk pengaturan setting LCD, adapun daftar command nya terbagi 2, sesuai dengan fitur LCD module ini dapat berkomunikasi secara I2C atau Serial. Perhatikan terdapat jumper pin pada LCD module, jika jumper pin open maka komunikasi I2C yang digunakan (default), sedangkan jika jumper pin closed maka komunikasi serial yang digunakan.

Cara penulisan instruksi sangat mudah yaitu pertama kita declare Register (perhatikan tabel berikut) :

Untuk Register 0 (atau 0x00) digunakan untuk mengawali setiap perintah / command berikutnya, sehingga module mengetahui bahwa modul ditugaskan untuk membaca (read) sisa byte pada buffer atau menulis perintah (write) instruksi dari controller. Adapun daftar instruksi (Write) sebagai berikut :

Untuk Register 1 dan 2 digunakan untuk membaca (read) instruksi dari keypad yang terbagai menjadi 2 Byte (Low Byte dan High Byte). Perhatikan penjelasan berikutnya mengenai 2 Byte pembacaan dari matrix keypad 3×4 yang teerhubung dengan module.

Berikut ini daftar instruksi Command I2C dalam format bilangan desimal, jika hendak menggunakan dalam hexadesimal gunakan kalkulator pada Windows > Programmer, maka dengan mudah kita bisa mengkonversi nilai desimal ke hexadesimal (dan sebaliknya).

Berikut ini daftar instruksi Command Serial dalam format bilangan desimal, jika hendak menggunakan dalam hexadesimal gunakan kalkulator pada Windows ubah settingan konveersi menjadi > Programmer, maka dengan mudah kita bisa mengkonversi nilai desimal ke hexadesimal (dan sebaliknya).

Untuk penghubungan dengan keypad, kita bisa hubungkan dengan matrix keypada 3×4 (7 pin), dimana pembacaan karakter dari 123456789*0# dibagi menjadi 8 bit low dan 8 bit high, sehingga total 2 Byte data digunakan pada pembacaan keypad oleh module LCD05, perhatikan tabel dibawah ini :

Berikut ini contoh script Arduino yang mengoperasikan setting pengaturan tingkat cahaya (Brightness) pada LCD 20×4. download

(*) Untuk diperhatikan pada tabel command nomor perintah dalam format desimal, sedangkan instruksi Wire.h pada Arduino dalam format hexadesimal, untuk itu pergunakan kalkulator pemrograman pada komputer (Windows) untuk memudahkan konversi antar bilangan.

Berikut ini contoh script Arduino yang mengoperasikan setting pengaturan tingkat cahaya (Brightness) dan Contrast pada LCD 16×2. download

 

Additional information

Weight 0,001 kg
Skill Programming

No Need

Skill Elektrikal

Level 3

Skill Robotika

Level 1

Skill DIY - Do it yourself

Level 1

Skill Soldering

Level 2