中易网

急!!!哪位高手有CA12864K液晶屏的资料和源程序啊?感激万分啊!!

答案:1  悬赏:10  
解决时间 2021-01-16 11:40
  • 提问者网友:难遇难求
  • 2021-01-15 15:33
急!!!哪位高手有CA12864K液晶屏的资料和源程序啊?感激万分啊!!
最佳答案
  • 二级知识专家网友:西岸风
  • 2021-01-15 16:01
◇ 类型:128*64点阵图型液晶模块
◇ 内建国标二级汉字字库
◇ 外型尺寸:93*70mm
◇ 视域尺寸:70.7*38.8mm
◇ 工作电压:5V
◇ 背光源:CCFL、LED、EL
◇ 温度:常温、宽温
◇ 可选黄绿膜、灰膜、蓝膜
◇ 串、并口自由转换
ca12864k 并口程序(简单测试)

#define lcd_port P0
#define rs P1_3
#define rw P1_4
#define e P1_5
#define cs1 P1_6
#define cs2 P1_7
#define bool bit
#define uc unsigned char
#define nop _nop_()

#include
#include
#include

uc code apple[]={0x30,0x50,0xd0,0x90,0xf0,0x30,0x80,0x60,0x3c,0xe8,0x20,0xa0,0xe0,0x70,0x00,0x00,0x04,0x06,0x03,0x11,0x13,0x12,0x18,0x0c,0x07,0x01,0x03,0x06,0x0c,0x1c,0x18,0x18};

void lcd_wcmd(uc cs,uc cmd);
void lcd_wdat(uc cs, uc dat);
void lcd_setcs(uc cs);
void lcd_ready();
void lcd_gotoxy(uc x,uc y,uc sline);
void lcd_reset();
void lcd_fill();
void delay(unsigned int ue);
uc *p;





void lcd_wcmd(uc cs,uc cmd)
{lcd_setcs(cs);
lcd_ready();
lcd_port=cmd;
rs=rw=0;
e=1;
nop;
e=0;
cs1=1;cs2=1;
}






void lcd_wdat(uc cs, uc dat)
{lcd_setcs(cs);
lcd_ready();
lcd_port=dat;
rs=1;
rw=0;
e=1;
nop;
e=0;
cs1=1;cs2=1;
}






void lcd_setcs(uc cs)
{switch(cs)
{case 1:cs1=0;break;
case 2:cs2=0;break;
}
}
void lcd_ready()
{lcd_port=0xff;
rs=0;
rw=1;
e=1;
nop;
while(lcd_port&0x80);
e=0;
}
void lcd_gotoxy(uc x,uc y,uc sline)
{uc cs;char tp;
tp=abs(x-63);
if(x-63>0)
cs=2;
else cs=1;
lcd_wcmd(cs,y+0xb8); //page=(y&0x07)+0xb8
lcd_wcmd(cs,tp+0x40); //row =(x&0x3f)|0x40
lcd_wcmd(cs,sline+0xc0);
}
void lcd_reset()
{//uc i;
lcd_wcmd(1,0x3f); //display on
lcd_wcmd(2,0x3f);
lcd_fill();

}

void lcd_fill()
{ uc a;
uc i,j,k=1;
for(j=0;j<8;j++)
{
lcd_gotoxy(0,j,k);
for(i=0;i<32;i++)
{lcd_wdat(1,a);
lcd_wdat(2,a);
a=*p;
p++;
}
k+=8;
}
}

void delay(unsigned int ue)
{unsigned int i;
for(i=0;i}
lcd_show()
{ lcd_wcmd(1,0x30);
delay(100);
lcd_wcmd(1,0x30);
lcd_wcmd(1,0x20);/////
lcd_wcmd(1,0x0f);
lcd_wcmd(1,0x01);
lcd_wcmd(1,0x07);
delay(100);
lcd_wdat(1,0x50);
lcd_wdat(1,0x3a);
lcd_wdat(1,0x30);
lcd_wdat(1,0x31);
lcd_wdat(1,0x2e);
lcd_wdat(1,0x4c);
lcd_wdat(1,0x4d);
lcd_wdat(1,0x00);
while(1); }

main()
{p=apple;
//lcd_reset();
lcd_show();
}参考资料:http://www.sunson.net/LeadBBS/Announce/announce.asp?BoardID=100&ID=1082
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息