Arduino LCD
/*
**
** From: http://arduino.cc/forum/index.php?topic=106655.0
**
** Example Arduino sketch for SainSmart I2C LCD2004 adapter
** for HD44780 LCD screens
** Readily found on eBay or www.sainsmart.com
** The LCD2004 module appears to be identical to one marketed
** by YwRobot
**
** Written for and tested with Arduino 1.0
** This example uses F Malpartida's NewLiquidCrystal library.
** Obtain from:
**    bitbucket.org/fmalpartida/new-liquidcrystal
**
** Edward Comer
** LICENSE: GNU General Public License, version 3 (GPL-3.0)
*/
#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>

#define I2C_ADDR      0x3F  // Define the PCF8574A I2C Address

#define BACKLIGHT_PIN 3

#define En_pin        2
#define Rw_pin        1
#define Rs_pin        0
#define D4_pin        4
#define D5_pin        5
#define D6_pin        6
#define D7_pin        7

int n = 1;

LiquidCrystal_I2C lcd(I2C_ADDR,En_pin,Rw_pin,Rs_pin,D4_pin,D5_pin,D6_pin,D7_pin);

void setup()
{
  lcd.begin(20,4);
  
// Switch on the backlight
  lcd.setBacklightPin(BACKLIGHT_PIN,POSITIVE);
  lcd.setBacklight(HIGH);
  lcd.home();                    // go home

  lcd.print("SainSmart I2C test");  
  lcd.setCursor(0,1);            // go to the next line
  lcd.print("F Malpartida library");
  lcd.setCursor (0,2);           // go to the next line
  lcd.print("Test By Edward Comer");
  lcd.setCursor (0,3);           // go to the next line
  lcd.print("Iteration No: ");
}

void loop()
{
  // Backlight on/off every 3 seconds
  lcd.setCursor(14,3);           // go col 14 of line 3
  lcd.print(n++,DEC);
  lcd.setBacklight(LOW);         // Backlight off
  delay(1000);
  lcd.setBacklight(HIGH);        // Backlight on
  delay(2000);
}