单片机LCD1602液晶显示的汇编程序

小弟最近在学习LCD1602液晶,我现在想问一个问题就是"AC"是什么意思,我看了好多的资料,都还不能理解AC的意思。AC是用于DDRAM和CGRAM地址的地址计数器,那... 小弟最近在学习LCD1602液晶,我现在想问一个问题就是"AC"是什么意思,我看了好多的资料,都还不能理解AC的意思。AC是用于DDRAM和CGRAM地址的地址计数器,那我想问了,如果我要想编写一个在1602的第一行循环显示“ZHU NI YI SHENG PING AN”现在这段字符已经超过了16个,也就是一行不能显示下来,要向左移动显示,知道将最后一个N移完,在进行下一次的移动显示,来回循环。我想要编写一个这样的汇编程序,那我是不是就可以改变AC的值能,让他每次显示一个字符后加一呢?可是实现吗?如果不可以那程序应该怎么编写呢?我只会汇编的。还有帮忙在解释一下AC的意思,我现在很乱。谢谢。 展开
 我来答
47okey
推荐于2017-12-16 · TA获得超过1.2万个赞
知道大有可为答主
回答量:5900
采纳率:75%
帮助的人:2315万
展开全部

也没去理解AC,只知道第一行第1点的地址是80H,第二行第1 点是C0H。

下面就是你要的程序,仅供参考

RS BIT P1.2 ;这3位是液晶屏的控制信号,连接方式由具体硬件而定

RW BIT P1.1

E BIT P1.0

ORG 00H

AJMP MAIN

ORG 30H

MAIN: 

mov R0,#24

ACALL INITIAL

ACALL DISPLAY;调用液晶显示子程序

AJMP MAIN

;-------液晶显示---------------------------------------

DISPLAY:   

MOV A,#80H  ;第一行第1 个点

ACALL WR_CMD

MOV DPTR, #LINE1

ACALL PR_STR

ACALL WR_DATA

DISP1:

MOV A,#1CH         ;字符左移命令(注:实物中左移命令字为18H)

ACALL WR_CMD

ACALL D05S

DJNZ R0,DISP1

RET

;---液晶屏初始化-------------------------------------------------

INITIAL:     

MOV A, #01H

ACALL WR_CMD

MOV A, #38H

ACALL WR_CMD

MOV A, #0CH

ACALL WR_CMD

MOV A, #06H

ACALL WR_CMD

RET

;----写液晶指令的子程序------------------------------------------

WR_CMD: 

MOV P3, A

CLR RS ;写入控制命令

CLR RW

CLR E

ACALL DELAY

SETB E

RET

;----写液晶数据---------------------------------------------

WR_DATA: 

MOV P3, A

SETB RS ;写入数据

CLR RW

CLR E

ACALL DELAY ;判断液晶模块是否忙?

SETB E

RET

;-----写行字符---------------------------------------------------------------

PR_STR:

CLR   A

MOVC A, @A+DPTR

JZ    END_PR

ACALL WR_DATA

INC   DPTR

AJMP PR_STR

END_PR:     

RET

;----查看液晶忙碌信号---------------------------------------------------------

DELAY: 

MOV P3,#0FFH ;判断液晶显示器是否忙的子程序

CLR RS

SETB RW

CLR E

NOP

SETB E

JB P3.7,DELAY ;如果P3.7为高电平表示忙就循环等待

RET

 

;----0.5S延时(按12MHZ算)-----------------------------------------------------------------

D05S: 

MOV R6,#25

MOV R5,#100

MOV R4,#100

DJNZ R4,$

DJNZ R5,$-4

DJNZ R6,$-8

RET

;--------------------------------------------------------------------------------------

LINE1:

DB ' ZHU NI YI SHENG PING AN',00H

END

 

 

 

谜鹿有你dMf61
2012-07-28 · 超过18用户采纳过TA的回答
知道答主
回答量:62
采纳率:100%
帮助的人:44万
展开全部
懂C,不是很了解汇编!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式