LCD Control via Bluetooth (Part 2)



How to control an LCD via Bluetooth

First watch this video:


Hardware Required

- Arduino or Genuino Board
- LCD Screen
- HC06-05 Bluetooth Module
- Pin headers to solder to the LCD display pins
- 10k ohm potentiometer
- 220 ohm resistor
- hook-up wires
- breadboard

Recommended site to buy the required hardware:


The LCDs have a parallel interface, meaning that the microcontroller has to manipulate several interface pins at once to control the display. The interface consists of the following pins:

- A register select (RS) pin that controls where in the LCD's memory you're writing data to. You can select either the data register, which holds what goes on the screen, or an instruction register, which is where the LCD's controller looks for instructions on what to do next.
- A Read/Write (R/W) pin that selects reading mode or writing mode
- An Enable pin that enables writing to the registers
- 8 data pins (D0 -D7). The states of these pins (high or low) are the bits that you're writing to a register when you write, or the values you're reading when you read.
- There's also a display constrast pin (Vo), power supply pins (+5V and Gnd) and LED Backlight (Bklt+ and BKlt-) pins that you can use to power the LCD, control the display contrast, and turn on and off the LED backlight, respectively.

Circuit

Before wiring the LCD screen to your Arduino or Genuino board we suggest to solder a pin header strip to the 14 (or 16) pin count connector of the LCD screen.
To wire your LCD screen to your board, connect the following pins:

LCD VSS pin to Arduino GND
LCD VDD pin to Arduino 5V
LCD RS pin to digital pin 12
LCD RW pin to Arduino GND
LCD Enable pin to digital pin 11
LCD D4 pin to digital pin 5
LCD D5 pin to digital pin 4
LCD D6 pin to digital pin 3
LCD D7 pin to digital pin 2
Additionally, wire a 10k pot to +5V and GND, with it's wiper (output) to LCD screens VO pin (pin3). 
A 220 ohm resistor is used to power the backlight of the display, usually on pin 15 (A+) and 16 (K-) of the LCD connector.

App Inventor

Get the Application:

Get the Code:
#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
String readString;

void setup() {
  Serial.begin(9600);
  lcd.begin(16, 2);
}

void loop() {
  while(Serial.available()){
    delay(50);
    char c=Serial.read();
    readString+=c;
  }
  if(readString.length()>0){
    Serial.println(readString);
    if (readString =="button_1"){
      lcd.clear();
      lcd.print("Mert Arduino");
    }

    if (readString =="button_2"){
      lcd.clear();
      lcd.print("Hello World");
    }

    if (readString =="button_3"){
      lcd.clear();
      lcd.print("Please Subscribe");
    }

    if (readString =="button_4"){
      lcd.clear();
      lcd.print("Youtube Channel");
    }
    readString="";
  }
}