Using 16*2 LCD with Arduino without potentiometer

Hi Guys ! Today we would be dealing with LCD (Liquid crystal displays). We will connect our Liquid crystal display to the Arduino and print characters on it. You might have heard about LCD TV but we would not be using Screen of that much size. We would be using a 16*2 LCD to print characters on it.

Hardware Required

  • Arduino Board
  • LCD 16*2 ( compatible )
  • Breadboard
  • Hook up wires
  • USB A-B Cable

Circuit Diagram

This circuit diagram represents the interfacing Liquid Crystal Display of 16*2 Size with arduino without Potentiometer. Potentiometer is used for adjusting the contrast of the Screen. I have eliminated the potentiometer in the circuit because not everyone can arrange all the things for their project. This article is to help those kind of people.

Well If you just want to Print characters on you (16*2) Screen and get the work done then it is ok to proceed further but if you want some detailed knowledge which Leads to what and why we have skipped some of the pins. You can get answers to all these questions by Reading this article – How LCD works .


Here comes the coding part ,If you are not a programmer then you might be worried that this would be a very tough job .Due to the upcoming of Libraries by David A Mellis ,this has become avery easy task .Now u don’t need to make special Header files for that purpose.

#include <LiquidCrystal.h> // specifying the library

int Contrast=15;
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup()
  analogWrite(6,Contrast);    //  Setting the Contrast .
  lcd.begin(16, 2);                    // set up the Screen’s number of columns and rows:
  lcd.print(“LCD test!!”);       // Print a message to the Screen.

New Terms

Name represents the name given to your Screen after “LiquidCrystal” Statement.

#include: This is used to include header files where u have predefined functions. For example, the Liquidcrystal.h contains .begin and .write functions in it.

Name.print: This is used to print the characters to the Screen.

Name.write: This is used to print newly generated Characters to the Screen.

Name.begin: This is used to specify how many rows and columns you would be using. There are different sizes of Screen available like 16*2 ,20*4.

Name.setcursor: It requires two inputs for setting the position of the cursor. For example, name.setcursor(2,2). It will set the cursor to the 2,2 position of the Screen.

Name.clear: It clears all the things written on the Screen.

Name.blink: It blinks the cursor used to determine the position of the cursor.

Want to see some awesomeness generated with this simple Liquid Crystal Display. Check out my other post Creativity inserted into Arduino.

You can comment on the article below or ask a question on Uzabila QNA.

Top ↑

Sergei Ermilov

I create web projects, come up with ideas, develop, optimize and promote websites. The first steps in this direction were taken in 2008. If you have any ideas or want to suggest something, then write to me and my team.

Leave a Reply