Commands and Instruction set

Only the instruction register (IR) and the data register (DR) of the LCD can be controlled by the MCU. Before starting the internal operation of the LCD, control information is temporarily stored into these registers to allow interfacing with various MCUs, which operate at different speeds, or various peripheral control devices. The internal operation of the LCD is determined by signals sent from the MCU. These signals, which include register selection signal (RS), read/write signal (R/W), and the data bus (DB0 to DB7), make up the LCD instructions (Table 3). There are four categories of instructions that:


  • Designate LCD functions, such as display format, data length, etc.
  • Set internal RAM addresses
  • Perform data transfer with internal RAM
  • Perform miscellaneous functions



Table 3: Command and Instruction set for LCD type HD44780


Although looking at the table you can make your own commands and test them. Below is a breif list of useful commands which are used frequently while working on the LCD.


No. Instruction Hex Decimal
1Function Set: 8-bit, 1 Line, 5x7 Dots0x3048
2Function Set: 8-bit, 2 Line, 5x7 Dots0x3856
3Function Set: 4-bit, 1 Line, 5x7 Dots0x2032
4Function Set: 4-bit, 2 Line, 5x7 Dots0x2840
5Entry Mode0x066
6Display off Cursor off
(clearing display without clearing DDRAM content)
0x088
7Display on Cursor on0x0E14
8Display on Cursor off0x0C12
9Display on Cursor blinking0x0F15
10Shift entire display left0x1824
11Shift entire display right0x1C30
12Move cursor left by one character0x1016
13Move cursor right by one character0x1420
14Clear Display (also clear DDRAM content)0x011
15Set DDRAM address or coursor position on display0x80 + address*128 + address*
16Set CGRAM address or set pointer to CGRAM location0x40 + address**64 + address**
Table 4: Frequently used commands and instructions for LCD
* DDRAM address given in LCD basics section see Figure 2,3,4
** CGRAM address from 0x00 to 0x3F, 0x00 to 0x07 for char1 and so on..

The table above will help you while writing programs for LCD. But after you are done testing with the table 4, i recommend you to use table 3 to get more grip on working with LCD and trying your own commands. In the next section of the tutorial we will see the initialization with some of the coding examples in C as well as assembly.

Share it! Like it!

Conversation

Sat Jan 31 2015, 11:17 AM
Pradeep Singh
I'm using 8051 microcontroller and want to configure HC-06 with it but I'm not able to find out what problem is occuring as my blueethooth is getting connected but no communication between blwutooth and pc/andriod phone
sachinmm
Sat Jan 31 2015, 05:23 AM
hello sir,i ask the question related to 7 segment display plz help me.
Thu Jan 29 2015, 11:24 AM
durai
I found discussion relevant to my problem (link:http://www.8051projects.net/t59199/gsm-cdma-discussion/flashing-new-firmware-in-sim900-modem.htm) but i could not find the project mentioned in that discusion
Thu Jan 29 2015, 11:21 AM
durai
Hi i am using a SIM/900A GSM modem, I want to send email with an attachement using a microcontroller but when i try to use AT_Email commands it gives me error,I think modem doesnot support those commands,is there any other way to send mail using that modem??
ajay_bhargav
Thu Jan 29 2015, 06:54 AM
@gaurav, please mail me message you're trying to post.
ExperimenterUK
Thu Jan 29 2015, 01:17 AM
bhagyesh.bhavasar/gaurav.k I can post with Firefox. Can you try other browsers ?
naqirizvi
Wed Jan 28 2015, 08:08 AM
the web theme is too much buggy and heavy , admin please change it to simple theme, so that user can browse quickly
naqirizvi
Wed Jan 28 2015, 08:07 AM
some one please share software name or ebooks related to avr
bhagyesh.bhavasar
Tue Jan 27 2015, 11:06 AM
i want to share my project but there is problem occurred during postng
bhagyesh.bhavasar
Tue Jan 27 2015, 05:58 AM
@ExperimentalUK i have used that purple button but same as previous it takes me to blank page

Downloads

Comments

sachinmm
Thu Jan 29 2015, 07:09 AM
nawfel
Sat Jan 17 2015, 07:27 AM
Rohi123
Sat Jan 10 2015, 11:00 AM
safakarici
Fri Jan 09 2015, 08:55 PM
Nikita_Pinjare
Thu Jan 08 2015, 03:10 PM
mayank058
Wed Jan 07 2015, 05:43 AM
Overeating
Tue Jan 06 2015, 05:56 AM
trancebreaker11
Sun Jan 04 2015, 07:42 AM

Online

Guests: 60, Members: 0 ...

most ever online: 182184
(Members: , Guests: 182184) on 06 Aug 2010: 05:37 AM

Members: 37574
Newest member: sachinmm
Forum Activity
sankalp_s Avatar
Posted By sankalp_s
Fri Jan 30 2015, 05:40 PM
you need to remove jump statements from main progr...
mayank058 Avatar
Posted By mayank058
Fri Jan 30 2015, 07:02 AM
dear sir, please tell me how to do t...
ExperimenterUK Avatar
Posted By ExperimenterUK
Thu Jan 29 2015, 10:41 PM
T he P89V51RD2 P1.5, P1.6, P1.7 has extra curren...
ExperimenterUK Avatar
Posted By ExperimenterUK
Thu Jan 29 2015, 06:45 PM
@naqirizviAs you already have a thread running I t...
naqirizvi Avatar
Posted By naqirizvi
Thu Jan 29 2015, 02:11 PM
Circuit diagram i am following i am not sure is it...
naqirizvi Avatar
Posted By naqirizvi
Thu Jan 29 2015, 02:11 PM
Circuit diagram i am following i am not sure is it...
naqirizvi Avatar
Posted By naqirizvi
Thu Jan 29 2015, 02:11 PM
Circuit diagram i am following i am not sure is it...
naqirizvi Avatar
Posted By naqirizvi
Thu Jan 29 2015, 01:50 PM
Hi,I am new to programming got some issues in RFID...
sachinmm Avatar
Posted By sachinmm
Thu Jan 29 2015, 07:21 AM
hello sir, plz tell me the circuit diagram interfa...
ajay_bhargav Avatar
Posted By ajay_bhargav
Thu Jan 29 2015, 06:28 AM
Moreover I see the segment Anode is connected via ...