I2C - Display data on LCD screen

Preparation

  • Ameba x 1
  • Funduino I2C 2×16 LCD

Example

Normally there are many pins on a LCD component, as shown in below figure.
1
Usually, a LCD component is equipped with an additional processing chip to process the data. The LCD component and the processing chip are connected through the I2C interface.
Refer to the figure below to connect Ameba RTL8195 to LCD:
2

Refer to the figure below to connect Ameba RTL8710 to LCD:
2

Open the example in “File” -> “Examples” -> “AmebaWire” -> “LcdHelloWorld”.
Compile and upload to Ameba, then press the reset button.
Then you can see “Hello World” in the first line, and “Ameba” in the second line displayed on the LCD screen.
3

After 8 seconds, you can input to the Serial Monitor the string you would like to display on the LCD.
4

For example, we enter “123456789” and press “Send”:
5

Code Reference

The required settings of each model of LCD might be different, the constructor we use in this example is:

LiquidCrystal_I2C(uint8_t lcd_Addr, uint8_t En, uint8_t Rw, uint8_t Rs, 
	          uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7,
		  uint8_t backlighPin, t_backlighPol pol);

And the setting parameters are as follows:

LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);  // Set the LCD I2C address

The first parameter 0x27 is the address of I2C. Each of the following 8 parameters represents the meaning of each bit in a byte, i.e., En is bit 2, Rw is bit 1, Rs is bit 0, d4 is bit 4, and so forth.

Call backlight() to light the screen,
Call setCursor(0, 0) to set the position of the cursor.
LCD inherits the Print class, so we can use lcd.print() to output string on the screen.