Skip to content

I2C_TWI_LCD2004_(SKU_DFR0154)

Angelo edited this page Sep 21, 2016 · 3 revisions

center

Introduction

I2C/TWI LCD2004 module is a cool lcd with a high speed I2C serial bus from DFRobot. With the limited pin resources, your project may be out of resources using normal LCD shield. The LCD display is a 4x20 character STN white display with a blue LED backlight.

With this I2C interface LCD module, you only need 2 lines (I2C) to display the information.If you already have I2C devices in your project, this LCD module actually cost no more resources at all. Fantastic for Arduino based project.

Specification

I2C Address: 0x20-0x27(0x20 default) Number of Characters: 20 characters x 4 Lines Blue LED backlight with white char color Adjustable contrast Supply voltage: 5V Interface: IIC/TWI View direction: Wide viewing angle Dot size: 0.55 x 0.55 mm Dot pitch: 0.60 x 0.60 mm Character size: 2.96 x 4.75 mm Character pitch: 3.55 x 5.35 mm Size: 98x60x24mm Weight: 75g

Connection Diagram

I2C LCD Connection Diagram

Sample code

//Please download the Arduino library!
//The link:http://www.dfrobot.com/image/data/DFR0154/LiquidCrystal_I2Cv1-1.rar
//DFRobot.com
//Compatible with the Arduino IDE 1.0
//Library version:1.1
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

#if defined(ARDUINO) && ARDUINO >= 100
#define printByte(args)  write(args);
#else
#define printByte(args)  print(args,BYTE);
#endif

uint8_t bell[8]  = {0x4,0xe,0xe,0xe,0x1f,0x0,0x4};
uint8_t note[8]  = {0x2,0x3,0x2,0xe,0x1e,0xc,0x0};
uint8_t clock[8] = {0x0,0xe,0x15,0x17,0x11,0xe,0x0};
uint8_t heart[8] = {0x0,0xa,0x1f,0x1f,0xe,0x4,0x0};
uint8_t duck[8]  = {0x0,0xc,0x1d,0xf,0xf,0x6,0x0};
uint8_t check[8] = {0x0,0x1,0x3,0x16,0x1c,0x8,0x0};
uint8_t cross[8] = {0x0,0x1b,0xe,0x4,0xe,0x1b,0x0};
uint8_t retarrow[8] = { 0x1,0x1,0x5,0x9,0x1f,0x8,0x4};

LiquidCrystal_I2C lcd(0x27,20,4);  // set the LCD address to 0x27 for a 20 chars and 4 line display(All jumpers should be connected!)

void setup()
{
//  Serial.begin(57600);
  lcd.init();                      // initialize the lcd
  lcd.backlight();

  lcd.createChar(0, bell);
  lcd.createChar(1, note);
  lcd.createChar(2, clock);
  lcd.createChar(3, heart);
  lcd.createChar(4, duck);
  lcd.createChar(5, check);
  lcd.createChar(6, cross);
  lcd.createChar(7, retarrow);
  lcd.home();

  lcd.setCursor(0, 0);
  for(int i = 0;i < 20; i++)  lcd.printByte(6);
  lcd.setCursor(0, 1);
  lcd.printByte(6);
  lcd.print("   Hello world    ");
  lcd.printByte(6);
  lcd.setCursor(0, 2);
  lcd.printByte(6);
  lcd.print("  i ");
  lcd.printByte(3);
  lcd.print(" arduinos!   ");
  lcd.printByte(6);
  lcd.setCursor(0, 3);
  for(int i = 0;i < 20; i++)  lcd.printByte(6);
//  lcd.clear();

}

void loop()
{

}

Documents

Arduino Sample code Arduino Library(compatible with IDE V1.0 and earlier) hd44780 Datasheet.pdf LCD datasheet Datasheet.pdf PCA8574 Datasheet

image:nextredirectltr.pngGo shopping i2c twi lcd2004 (sku:dfr0154) category: Product Manual category: DFR Series category: LCDs category: source category: Diagram

Clone this wiki locally