LCD1602知识详解(很详尽的)

时间:2022-05-16 04:45:10

1602液晶知识详解:

1、1602液晶基础

*VSS:电源地信号引脚;

*VDD:电源信号引脚;

*VEE:液晶对比度调节引脚,接0~5V以调节液晶的显示对比度;

*RS:寄存器选择引脚:

RS = 1时为数据寄存器;

RS = 0时为指令寄存器;

*RW:读写选择引脚:

RW = 1时,选择读操作;

RW = 0时,选择写操作;

*E:读写操作选择引脚,下降沿时,数据被写入1602液晶,E= 1时,对1602液晶进行读数据操作;

*D0~D7:数据总线引脚;

*LEDA:背光电源引脚;

*LEDK:背光电源地引脚;

2、指令简介:

*清屏指令,用与清除DDRAM和AC的数值,将屏幕显示清空:

RS

RW

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

0

0

0

0

1

*归零指令,将屏幕光标回归原点:

RS

RW

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

0

0

0

1

*

*输入方式选择指令,用于设置光标和画面移动方式:

I/D = 1:表示数据读写操作后,AC自动加1;

I/D = 0:表示数据读写操作后,AC自动减1;

S = 1:表示数据读写操作后,画面平移;

S= 0:表示数据读写操作后,画面保持不变;

RS

RW

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

0

0

1

I/D

S

*显示开关控制指令,用于设置显示光标级闪烁开、关:

D:显示开关:D= 1:开;D = 0:关;

C:光标开关:C= 1:开;C= 0:关;

B:闪烁开关:B= 1:开;B= 0:关;

RS

RW

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

0

1

D

C

B

*光标和画面移动指令,用于在不影响DDRAM的情况下使光标、画面移动:

S/C = 1:画面平移1个字符位;

S/C = 0:光标平移1个字符位;

R/L = 1:右移;

R/L = 0:左移;

RS

RW

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

0

1

S/C

R/L

*

*

*功能设置指令,用于设置工作方式(初始化指令):

DL= 1:表示8位数据接口;

DL = 0:表示4位数据接口;

N = 1:表示2行显示;

N = 0:表示1行显示;

F = 1:表示5*10的点阵字符;

F = 0:表示5*7的点阵字符;

RS

RW

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

0

1

DL

N

F

*

*

*CGRAM设置指令,用于设置CGRAM的地址,其中A5~A0 =0X00~0X03F:

RS

RW

D7

D6

D5

D4

D3

D2

D1

D0

0

0

0

1

A5

A4

A3

A2

A1

A0

*DDRAM设置指令,用于设置DDRAM地址。其中,D7 = 0,表示一行显示A6~A0= 0~4FH;D7 = 1,表示两行显示,首行显示A6~A0 = 00H~2FH,次行显示A6~A0 = 40H~64FH:

RS

RW

D7

D6

D5

D4

D3

D2

D1

D0

0

0

D7

A6

A5

A4

A3

A2

A1

A0

DDRAM :

显示用RAM,直接和屏幕上的点相对应.屏幕上的一个点和DDRAM中的一个位对应,字符屏的DDRAM和图形屏的DDRAM有一点点区别。  

CGROM:

字模存储用空间。你要显示某个ASCII字符时,要显示字符的字模就存在这里,对于字符屏,要显示某个字符时,往DDRAM里写字符的索引(一般都是ASCII码)就可以完成显示。比如你写0x38,则显示为数字8。  

字符屏的DDRAM一般和IC能显示的最大字符数相同。有的IC可以控制显示80个字符,但屏幕只显示20个字符。对于图形屏,往DDRAM里写什么样的数据,屏幕上就会显示什么样的点,比如你写0x38,   则显示00111000。图形屏的DDRAM一般都会比屏幕显示大个2倍以上,为的是简化翻屏,以及实现其他特殊显示效果  。

       CGRAM是用户自建字模区,有时ASCII码表不能满足个人对字符的要求,则需要在这里写入字模。字模的方式和CGROM中的一样。

一般写入到这里的字模,其索引值为(0x00~0x07),建立好字模后,往DDRAM中写索引0x00,新建的字符就会显示出来。

*读BF和AC指令,其中,BF = 1表示忙,BF = 0表示准备好。此时AC值为最近一次地址设置(CGRAM和DDRAM)定义:

RS

RW

D7

D6

D5

D4

D3

D2

D1

D0

0

1

BF

AC

AC5

AC4

AC3

AC2

AC1

AC0

*写数据指令,用于将地址码写入DDRAM以使LCD显示出相应的图形或将用户自创的图形存入CGRAM内:

RS

RW

D7

D6

D5

D4

D3

D2

D1

D0

0

 1

数据

*读数据指令,根据当前设置的地址,从DDRAM和CGRAM中读出数据:

RS

RW

D7

D6

D5

D4

D3

D2

D1

D0

1

 1

数据

 

 

 

编程思路:

*设置1602液晶的功能;

*设置1602液晶的输入方式;

*设置1602液晶的显示方式;

*清屏;