版主
主题
回帖0
积分66874
阅读权限200
注册时间2008-11-12
最后登录1970-1-1
在线时间 小时
|
全新台湾产带背光2004 LCD显示屏, 液晶,全新,带背光。宽温度范围,宽视角,外形尺寸98*60*10, 标准型号,标准接口,兼容HD44780和1602LCD
淘宝购买链接
厂家资料参考
dmc20481ny-ly-ABE.pdf
(174.19 KB, 下载次数: 1405)
S52测试程序
C2004A.hex
(1.49 KB, 下载次数: 501)
#include <AT89X52.H>
#include<intrins.h>
sbit rs = P2^0;
sbit rw = P2^1;
sbit e = P2^2;
#define bus P1
unsigned char xpos,ypos;
//*********延时程序*********
void delay(unsigned int t)
{ unsigned int i,j;
for(i=0;i<t;i++)
for(j=0;j<10;j++)
;
}
//**********测忙*************
void busycheck(void)
{ bus=0xff;
rs=0;
rw=1;
e=1;
while((bus&0x80)==0x80);
e=0;
}
//**********写指令代码*******
void wrcom(unsigned char com)
{ busycheck();
rs=0;
rw=0;
bus=com;
e=1;
_nop_();
e=0;
}
//************写数据*********
void wrdat(unsigned char dat)
{ busycheck();
rs=1;
rw=0;
bus=dat;
e=1;
_nop_();
e=0;
}
//********设置CGROM 地址,CODE为0x01 ***********
void setcgrom(void)
{ unsigned char i;
wrcom(0x48);
for(i=0;i<4;i++)
{ wrdat(0x15);
wrdat(0x0a);
}
}
//******shift left ***********
void shiftleft(unsigned char x)
{ unsigned char i;
for(i=0;i<x;i++)
{ wrcom(0x18);
delay(3000);
}
}
//****内部数据地址指针定位****
void lcdpos(void)
{ xpos&=0x1f;
ypos&=0x03;
if(ypos==0x00)
wrcom(xpos|0x80);
else if(ypos==0x01)
wrcom((xpos+0x40)|0x80);
else if(ypos==0x02)
wrcom((xpos+0x14)|0x80);
else
wrcom((xpos+0x54)|0x80);
}
//**********初始化************
void lcdreset()
{ delay(150);
wrcom(0x38); //8-bit,2-line,5x8 dots
delay(50);
wrcom(0x01); //clear screen
wrcom(0x06); //cursor increase,no shift
wrcom(0x0c); //display on,cursor off,blink off
wrcom(0x03); //return home
}
//********整屏显示某个数据************
void display_all(unsigned char dat)
{ for(ypos=0;ypos<4;ypos++)
for(xpos=0;xpos<20;xpos++)
{ lcdpos();
wrdat(dat);
}
}
//*********在指定的坐标下写字符串**********
void lcdwda(unsigned char x,unsigned char y,unsigned char *s)
{ ypos=y;
for(xpos=x;xpos<20;xpos++)
{ lcdpos();
wrdat(*s);
s++;
}
}
main()
{
e=0;
lcdreset();
setcgrom();
display_all(0xff);
delay(4000);
display_all(0x38);
delay(4000);
display_all(0x01);
delay(4000);
display_all(0xb6);
delay(4000);
lcdwda(0,0," WELCOME TO YLEEE ");
lcdwda(0,1," WWW.YLEEE.NET ");
lcdwda(0,2,"TEL:+86-13927433520");
lcdwda(0,3," 2004 LCD MODULE ");
delay(4000);
shiftleft(20);
while(1);
}
联系电话13927433520 QQ841526919 旺旺在线 yleee@163.com |
|