注册 登录
编程论坛 单片机编程

1602数据指针设置问题??

猴哥取经 发布于 2013-06-18 13:15, 4674 次点击
在设置数据指针时,就是那个80H+(0~27H,40~67H).
其中那个
//以下是光标定位函数
void lcdpoit(uchar x,uchar y)
{
   uchar temp;
   x&=0x01;
   y&=0x0f;
   temp=y;
   if(x==0)
   temp+=0x80;//什么意思呀,说是地址码+0x80????????????????????如下
   temp+=0xc0;//什么意思呀,说是地址码+0xc0,这个不是祸运算吗????????????????
   
   writeIR(temp,0);
}
还有,地址指针计数器,AC什么意思???就是在DDRAM地址设置时,来确定你写的字符在lcd的哪个位置么??

求指教,谢谢大家了!!!!
3 回复
#2
小xiong2013-06-30 11:15
我用白话文简单的说一下,1602能显示2行字符,一行16个,第一行的起始地址是0x80,但是它第第一行有的ram空间不止16个,超过16个就不能显示了,但是它存在,移屏得到
#3
夜雨风铃2013-08-20 12:14
1602液晶的RAM有80B,第一行地址为00H~27H,第二行地址为40H~67H,当向00~0F,40~4F地址中的任意一处写入显示数据时,液晶可以立即显示出来,当写入到10H~27H,50H~67H地址处时,必须通过移屏指令将他们移入显示区域方可正常显示。
temp+=0x80;//数据指针的设置格式为:80H+地址码,temp = 80H+temp,即写入地址为80H+temp
地址指针计数器就是指向80B地址的指针,写入一个字节地址指针自动+1
#4
mjyyy2013-11-03 20:18
ox80 是第一行地址,然后加0~15,分别是从第一行第一个地址到第十六个地址
oxc0是第二行地址,然后加0~15分别是从第二行第一个地址到第十六个地址
1