Introduction
Like the more common version of I2C 1602 LCD, this LCD also
has blue backlight. It has 4 rows of 20 characters. With this I2C interface LCD
module, you will be able to realize data display via only 2 wires. If you
already has I2C devices in your project, this LCD module actually cost no more
resources at all. It is fantastic for Arduino based project. This LCD is available from our eBay Store.
Features
·
Interface: I2C
·
I2C
Address: 0x27 or 0x3F
·
Pin
Definition : GND,VCC,SDA,SCL
·
Back lit
(Blue with White char color)
·
Supply
voltage: 5V
·
Pcb Size
: 60mm×99mm
·
Contrast
Adjust : Potentiometer
·
Backlight
Adjust : Jumper
I2C ADDRESS:
There are a few versions of
2004 Lcd available with different I2c address e.g. 0x20, 0x27, 0x3F.
If not sure , I2C address can be verified by running I2C scanner
sketch from the Arduino playground.
For our LCD the address was verified as 0x27.
Hardware Setup:
Get four male to female dupont jumper wires and connect the LCD module to your Arduino as shown in the following
image and table. Then connect your Arduino to the computer via USB:
Software Setup
The next step is to download
and install the Arduino I2C LCD library for use with the backpack. First of
all, rename the “LiquidCrystal” library folder in your Arduino libraries
folder. We do this just to keep it as a backup.
If you’re not sure where your
library folder can be found – it’s usually in your sketchbook folder, whose
location can usually be found in the Arduino IDE preferences menu:
Next, visit https://bitbucket.org/fmalpartida/new-liquidcrysta…
and download the latest
file, currently we’re using v1.3.4. Expanding the downloaded .zip file will
reveal a new “LiquidCrystal” folder – copy this into your Arduino libraries
folder.
Now restart the Arduino IDE if
it was already running – or open it now. To test the module we have a
demonstration sketch prepared, simply copy and upload the following sketch:
Arduino Code:
#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3,
POSITIVE);
void setup()
{
lcd.begin(20,4);
//
lcd.setBacklightPin(3,POSITIVE);
//lcd.setBacklight(HIGH);// initialize the lcd
}
void loop()
{
lcd.home (); // go home
lcd.print("
Hello World !");
lcd.setCursor(8,1);
lcd.print("By");
lcd.setCursor(6,2);
lcd.print("Alictronix!");
lcd.setCursor(2,3);
lcd.print("++++++++++++++++");
delay(1000);
}
Results:
After a few moments the
LCD will be initialized and start to display "Hello world", – for
example:
If the text isn’t clear, or you just see white blocks –
try adjusting the contrast using the potentiometer on the back of the module. You can
permanently turn off the backlight by removing the physical jumper on the back
of the module.
I've tried adjusting the contrast on my potentiometer several times, but still can't gain full control of the situation. Without going into details, is there a better way? Perhaps a new LCD graphic display is in order. What's your opinion? I really need a world class and reliable system for my full motion productions and scale objectives.
ReplyDelete