RT12232F带中文液晶显示器.docx

上传人:b****5 文档编号:8047186 上传时间:2023-01-28 格式:DOCX 页数:34 大小:399.22KB
下载 相关 举报
RT12232F带中文液晶显示器.docx_第1页
第1页 / 共34页
RT12232F带中文液晶显示器.docx_第2页
第2页 / 共34页
RT12232F带中文液晶显示器.docx_第3页
第3页 / 共34页
RT12232F带中文液晶显示器.docx_第4页
第4页 / 共34页
RT12232F带中文液晶显示器.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

RT12232F带中文液晶显示器.docx

《RT12232F带中文液晶显示器.docx》由会员分享,可在线阅读,更多相关《RT12232F带中文液晶显示器.docx(34页珍藏版)》请在冰豆网上搜索。

RT12232F带中文液晶显示器.docx

RT12232F带中文液晶显示器

一、概述

12232F是一种内置8192个16*16点汉字库和128个16*8点ASCII字符集图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×32全点阵液晶显示器组成。

可完成图形显示,也可以显示7.5×2个(16×16点阵)汉字.与外部CPU接口采用并行或串行方式控制。

主要技术参数和性能:

1.电源:

VDD:

+3.0∽+5.5V。

(电源低于4.0伏LED背光需另外供电)

2.显示内容:

122(列)×32(行)点。

3.全屏幕点阵。

4.2MROM(CGROM)总共提供8192个汉字(16×16点阵)。

5.16KROM(HCGROM)总共提供128个字符(16×8点阵)。

6.2MHZ频率。

7.工作温度:

0℃∽+55℃,存储温度:

-20℃∽+60℃

8.在线路板上,有一焊接处,标有J2,共3个焊点。

使用并行方式,连接上2个焊点。

使用串行方式,连接下2个焊点。

二、外形尺寸图

图1

2.外形尺寸图

表1

项目

正常尺寸

单位

模块体积

84×44×13

mm

视域

60.5×18.0

mm

行列点阵数

122×32

DOTS

点距离

0.36×0.41

mm

点大小

0.40×0.45

mm

三、模块主要硬件构成说明

1.RS,R/W的配合选择决定控制界面的4种模式:

RS

R/W

功能说明

L

L

MPU写指令到指令暂存器(IR)

L

H

读出忙标志(BF)及地址记数器(AC)的状态

H

L

MPU写入数据到数据暂存器(DR)

H

H

MPU从数据暂存器(DR)中读出数据

2.E信号

E状态

执行动作

结果

高——>低

I/O缓冲——>DR

配合/W进行写数据或指令

DR——>I/O缓冲

配合R进行读数据或指令

低/低——>高

无动作

●忙标志:

BF

BF标志提供内部工作情况.BF=1表示模块在进行内部操作,此时模块不接受外部指令和数据.BF=0时,模块为准备状态,随时可接受外部指令和数据.

利用STATUSRD指令,可以将BF读到DB7总线,从而检验模块之工作状态.

●字型产生ROM(CGROM)

字型产生ROM(CGROM)提供8192个此触发器是用于模块屏幕显示开和关的控制。

DFF=1为开显示(DISPLAYON),DDRAM的内容就显示在屏幕上,DFF=0为关显示(DISPLAYOFF)。

DFF的状态是指令DISPLAYON/OFF和RST信号控制的。

●显示数据RAM(DDRAM)

模块内部显示数据RAM提供64×2个位元组的空间,最多可控制4行16字(64个字)的中文字型显示(本模块只用到其中的7.5*2个),当写入显示数据RAM时,可分别显示CGROM与CGRAM的字型;此模块可显示三种字型,分别是瘦长的英数字型(16*8)、CGRAM字型及CGROM的中文字型,三种字型的选择,由在DDRAM中写入的编码选择,在00~0F的编码中将选择CGRAM的字定义字型,10~7F的编码中将选择

瘦长英数字的字型,至于A0以上的编码将自动的结合下一个位元组,组成两个位元组的编码形成中文字型的编码(A140~D75F)。

●字型产生RAM(CGRAM)

字型产生RAM提供图象定义(造字)功能,可以提供四组16×16点的自定义图象空间,使用者可以将内部字型没有提供的图象字型自行定义到CGRAM中,便可和CGROM中的定义一般的通过DDRAM显示在荧屏中。

●地址计数器AC

地址计数器是用来贮存DDRAM/CGRAM之一的地址,它可由设定指令暂存器来改变,之后只要读取或是写入DDRAM/CGRAM的值时,地址计数器的值就会自动加一,当RS为“0”时而R/W为“1”时,地址计数器的值会被读取到DB6~DB0中。

●游标/闪烁控制电路

此模块提供硬体游标及闪烁控制电路,由地址计数器的值来指定DDRAM中的游标或闪烁位置。

四、模块的外部接口

外部接口信号如下表2、3所示(并行接口):

表2

管脚号

管脚名称

LEVER

管脚功能描述

1

VSS

0V

电源地

2

VCC

3.0+5V

电源正

3

VEE

-

对比度调整

4

RS(CS)

H/L

RS=“H”,表示DB7~DB0为显示数据

RS=“L”,表示DB7~DB0为显示指令数据

5

R/W(SID)

H/L

R/W=“H”,E=“H”,数据被读到DB7~DB0

R/W=“L”,E=“H→L”,DB7~DB0的数据被写到IR或DR

6

E(CLK)

H/L

使能信号

7

DB0

H/L

数据线

8

DB1

H/L

数据线

9

DB2

H/L

数据线

10

DB3

H/L

数据线

11

DB4

H/L

数据线

12

DB5

H/L

数据线

13

DB6

H/L

数据线

14

DB7

H/L

数据线

15

BL+

VDD

背光源电压+4.2V-+5V

16

BL-

Vss

背光源公共端

 

串口接口管脚信号

表3

管脚号

名称

LEVER

功能

1

VSS

0V

电源地

2

VDD

+5V

电源正(3.0V~5.5V)

3

VEE

-

对比度调整

4

CLK

H/L

串行同步时钟:

上升沿时读取SID数据

5

SID

H/L

串行数据输入端

6

CS

H/L

模组片选端,高电平有效

7

BL+

VDD

背光源电压+4.2V-+5V

8

BL-

VSS

背光源公共端

 

五、指令说明

模块控制芯片提供两套控制命令,基本指令和扩充指令如下:

指令表1:

(RE=0:

基本指令)

指令码

功能

RS

R/W

D7

D6

D5

D4

D3

D2

D1

D0

清除

显示

0

0

0

0

0

0

0

0

0

1

将DDRAM填满"20H",并且设定DDRAM的地址计数器(AC)到"00H"

地址

归位

0

0

0

0

0

0

0

0

1

X

设定DDRAM的地址计数器(AC)到"00H",并且将游标移到开头原点位置;这个指令不改变DDRAM的内容

显示状态开/关

0

0

0

0

0

0

1

D

C

B

D=1:

整体显示ON

C=1:

游标ON

B=1:

游标位置反白允许

进入点

设定

0

0

0

0

0

0

0

1

I/D

S

指定在数据的读取与写入时,设定游标的移动方向及指定显示的移位

游标或显示移位控制

0

0

0

0

0

1

S/C

R/L

X

X

设定游标的移动与显示的移位控制位;这个指令不改变DDRAM的内容

功能

设定

0

0

0

0

1

DL

X

RE

X

X

DL=0/1:

4/8位数据

RE=1:

扩充指令操作

RE=0:

基本指令操作

设定CGRAM

地址

0

0

0

1

AC5

AC4

AC3

AC2

AC1

AC0

设定CGRAM地址

设定DDRAM

地址

0

0

1

0

AC5

AC4

AC3

AC2

AC1

AC0

设定DDRAM地址(显示位址)

第一行:

80H-87H

第二行:

90H-97H

读取忙标志和地址

0

1

BF

AC6

AC5

AC4

AC3

AC2

AC1

AC0

读取忙标志(BF)可以确认内部动作是否完成,同时可以读出地址计数器(AC)的值

写数据到RAM

1

0

数据

将数据D7~D0写入到内部的RAM(DDRAM/CGRAM/IRAM/GRAM)

读出RAM的值

1

1

数据

从内部RAM读取数据D7~D0

(DDRAM/CGRAM/IRAM/GRAM)

指令表2:

(RE=1:

扩充指令)

指令码

功能

RS

R/W

D7

D6

D5

D4

D3

D2

D1

D0

待命

模式

0

0

0

0

0

0

0

0

0

1

进入待命模式,执行其他指令都棵终止

待命模式

卷动地址开关开启

0

0

0

0

0

0

0

0

1

SR

SR=1:

允许输入垂直卷动地址

SR=0:

允许输入IRAM和CGRAM地址

反白

选择

0

0

0

0

0

0

0

1

R1

R0

选择2行中的任一行作反白显示,并可决定反白与否。

初始值R1R0=00,第一次设定为反白显示,再次设定变回正常

睡眠

模式

0

0

0

0

0

0

1

SL

X

X

SL=0:

进入睡眠模式

SL=1:

脱离睡眠模式

扩充

功能

设定

0

0

0

0

1

CL

X

RE

G

0

CL=0/1:

4/8位数据

RE=1:

扩充指令操作

RE=0:

基本指令操作

G=1/0:

绘图开关

设定绘图RAM

地址

0

0

1

0

AC6

0

AC5

0

AC4

AC3

AC3

AC2

AC2

AC1

AC1

AC0

AC0

设定绘图RAM

先设定垂直(列)地址AC6AC5…AC0

再设定水平(行)地址AC3AC2AC1AC0

将以上16位地址连续写入即可

备注;当IC1在接受指令前,微处理器必须先确认其内部处于非忙碌状态,即读取BF标志时,BF需为零,方可接受新的指令;如果在送出一个指令前并不检查BF标志,那么在前一个指令和这个指令中间必须延长一段较长的时间,即是等待前一个指令确实执行完成。

 

六.时序图

并口读写时序图:

MPU写数据

MPU读数据

串口读写时序:

电源开启

七、软件初始化:

延迟时间超过40ms

RSRWD7D6D5D4D3D2D1D0

…….在此指令前,不能检查BF标志

000011XXXX

延迟时间超过100us

000011XXXX

…….在此指令前,不能检查BF标志

延迟时间超过37us

000011XXXX

…….在此指令前,不能检查BF标志

00001111xx

……在此指令前,不能检查BF标志

0000111000

…..设为基本指令

0000000001

…..荧屏显示清除

00000001I/DS

…..进入点设定

初始设定结束

 

八.应用举例:

12232F与单片机8031的一种接口如图5.所示

;Thisprogramisfor12232F

;RS--------P3.3

;R/W-------P3.1

;E---------P3.0

;DB~7-----P1

DIEQUP3.3

RWEQUP3.1

EEQUP3.0

ORG0000H

AJMPSTART

ORG0003H

LCALLPAUSE

START:

MOVIE,#81H;EXT.INT0PERMIT

MOVIP,#01H;INT0ISFIRSTINT.LEVEL

MOVTCON,#00H;TIMER/COUNTERCONTROLERINIT.

movSP,#67h

LCALLDELAY

LCALLDELAY

LCALLSETUP

LCALLDEF_CHAR

MOVA,#80H

LCALLWRITE_COM

MOVR3,#8

TEST11:

MOVDPTR,#CGRAM1;CGRAMTEST

LCALLWRITE_CGRAM

DJNZR3,TEST11

MOVA,#90H

LCALLWRITE_COM

MOVR3,#8

TEST12:

MOVDPTR,#CGRAM1

LCALLWRITE_CGRAM

DJNZR3,TEST12

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

MOVA,#80H

LCALLWRITE_COM

MOVR3,#8

TEST21:

MOVDPTR,#CGRAM2

LCALLWRITE_CGRAM

DJNZ3,TEST21

MOVA,#90H

LCALLWRITE_COM

MOVR3,#8

TEST22:

MOVDPTR,#CGRAM2

LCALLWRITE_CGRAM

DJNZR3,TEST22

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

MOVA,#80H

LCALLWRITE_COM

MOVR3,#8

TEST31:

MOVDPTR,#CGRAM3

LCALLWRITE_CGRAM

DJNZR3,TEST31

MOVA,#90H

LCALLWRITE_COM

MOVR3,#8

TEST32:

MOVDPTR,#CGRAM3

LCALLWRITE_CGRAM

DJNZR3,TEST32

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

MOVA,#80H

LCALLWRITE_COM

MOVR3,#8

TEST41:

MOVDPTR,#CGRAM4

LCALLWRITE_CGRAM

DJNZR3,TEST41

MOVA,#90H

LCALLWRITE_COM

MOVR3,#8

TEST42:

MOVDPTR,#CGRAM4

LCALLWRITE_CGRAM

DJNZR3,TEST42

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

MOVA#80H;WORDTEST

LCALLWRITE_COM

MOVDPTR,#CHINESE

LCALLWRITE_HZ

MOVA,#90H

LCALLWRITE_COM

MOVDPTR,#TABLE1

LCALLWRITE_ASCII

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

MOVA#80H

LCALLWRITE_COM

MOVDPTR,#table1

LCALLWRITE_ascii

MOVA,#90H

LCALLWRITE_COM

MOVDPTR,#chinese

LCALLWRITE_hz

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

AAA:

LJMPSTART

SETUP:

LCALLDELAY

LCALLDELAY

LCALLDELAY

MOVA,#01H;CLEARDISPLAY

LCALLWRITE_COM

MOVA,#00110000B;FUNCTIONSETTING

LCALLWRITE_COM

MOVA,#00000010B;DDRAMSETTO'00H'

LCALLWRITE_COM

MOVA,#00000100B;

LCALLWRITE_COM

MOVA,#00001100B;DISPLAYON

LCALLWRITE_COM

MOVA,#00000001B;CLEARINGSCREEN

LCALLWRITE_COM

MOVA,#10000000B;SETDDRAMADDRESS

LCALLWRITE_COM

RET

WRITE_COM:

;WRIT///cv

;WRITECOMMANDSTOST7920

LCALLDELAY1;INSTEADOFCHECKINGBFSTATE

CLRRS

CLRRS

CLRRW

CLRRW

MOVP1,A

MOVP1,A

SETBE

SETBE

NOP

NOP

CLRE

CLRE

;LCALLDELAY1

RET

WRITE_DAT:

;WRITEDISPLAYDATASTOST79220

LCALLDELAY1

SETBRS

SETBRS

CLRRW

CLRRW

MOVP1,A

MOVP1,A

SETBE

SETBE

NOP

NOP

CLRE

CLRE

RET

DELAY1:

MOVR7,#010H

D11:

MOVR6,#010H

DJNZR6,$

DJNZR7,D11

RET

DELAY:

MOVR1,#00H

D2:

MOVR2,#00H

DJNZR2,$

DJNZR1,D2

RET

DEF_CHAR:

;WRITETOCGRAM

MOVA,#01000000B;SETCGRAMADDRESS

LCALLWRITE_COM

MOVR3,#8

DEF1:

MOVA,#000H

LCALLWRITE_DAT

LCALLWRITE_DAT

MOVA,#0FFH

LCALLWRITE_DAT

LCALLWRITE_DAT

DJNZR3,DEF1

MOVR3,#8

DEF2:

MOVA,#0AAH

LCALLWRITE_DAT

LCALLWRITE_DAT

MOVA,#0AAH

LCALLWRITE_DAT

LCALLWRITE_DAT

DJNZR3,DEF2

MOVR3,#8

DEF3:

MOVA,#055H

LCALLWRITE_DAT

LCALLWRITE_DAT

MOVA,#0AAH

LCALLWRITE_DAT

LCALLWRITE_DAT

DJNZR3,DEF3

movR3,#8

DEF4:

MOVA,#0FFH

LCALLWRITE_DAT

LCALLWRITE_DAT

LCALLWRITE_DAT

LCALLWRITE_DAT

DJNZR3,DEF4

RET

WRITE_ASCII:

MOVR4,#16

DDDD:

CLRA

MOVCA,@A+DPTR

LCALLWRITE_DAT

INCDPTR

DJNZR4,DDDD

RET

WRITE_HZ:

;WRITE8CHINESETOLCD

MOVR4,#8

DD:

CLRA

MOVCA,@A+DPTR

INCDPTR

LCALLWRITE_DAT

CLRA

MOVCA,@A+DPTR

INCDPTR

LCALLWRITE_DAT

DJNZR4,DD

RET

WRITE_CGRAM:

;CGRAMTESTING

CLRA

MOVCA,@A+DPTR

LCALLWRITE_DAT

INCDPTR

CLRA

MOVCA,@A+DPTR

LCALLWRITE_DAT

RET

PAUSE:

SETBP3.2;PAUSEKEYPROCESS

SETBP3.2

LCALLDELAY1

MOVC,P3.2

MOVC,P3.2

JNCPAUSE;CHECKKEYWASPRESSED

PAUSE1:

MOVC,P3.2

MOVC,P3.2

LCALLDELAY1

JCPAUSE1;CHECKKEYOPENAFTERPRESSED

PAUSE2:

SETBP3.2

SETBP3.2

LCALLDELAY1

MOVC,P3.2

MOVC,P3.2

JNCPAUSE2;CHECKKEYWASPRESSEDAGAIN

RETI

TABLE1:

;“这里是16*8点阵的字符代码”

CGRAM1:

DB000H,000H;这里是自造字符地址表

CGRAM2:

DB000H,002H

CGRAM3:

DB000H,004H

CGRAM4:

DB000H,006H

CHINESE:

;“这里是16*16点阵的汉字代码表”

END

以下为串口写指令和数据的子程序:

WRITE_COM:

LCALLDELAY1;INSTEADOFCHECKINGBFSTATE

SETBCS

PUSHACC

MOVR0,#8

MOVA,#11111000B

COMM1:

CLRC

RLC

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1