CS2LCM = 1; /*SETB CS2 */
CS3LCM = 1; /*SETB CS3 */
wtcom(); /* waitting for enable */
}
void lcdbusyM(void)
{
CS1LCM = 1; /*SETB CS1 */
CS2LCM = 0; /*CLR CS2 */
CS3LCM = 1; /*SETB CS3 */
wtcom(); /* waitting for enable */
}
void lcdbusyR(void)
{
CS1LCM = 1; /*SETB CS1 */
CS2LCM = 1; /*SETB CS2 */
CS3LCM = 0; /*CLR CS3 */
wtcom(); /* waitting for enable */
}
void wtcom(void)
{
Dilcm = 0; /*CLR DI */
Rwlcm = 1; /*SETB RW */
Datalcm = 0xFF; /*MOV DATA_LCM,#0FFH */
Elcm = 1;_nop_();
while(Datalcm & Lcdbusy);
Elcm = 0;
}
/********************************************************/
/*根据设定的坐标数据,定位LCM上的下一个操作单元位置 */
/********************************************************/
void Locatexy(void)
{
unsigned char x,y;
switch (col&0xc0) /* col.and.0xC0 */
{ /*条件分支执行 */
case 0: {lcdbusyL();break;} /*左区 */
case 0x40: {lcdbusyM();break;} /*中区 */
case 0x80: {lcdbusyR();break;} /*右区 */
}
x = col&0x3F|SETX; /* col.and.0x3f.or.setx */
y = row&0x07|SETY; /* row.and.0x07.or.sety */
wtcom(); /* waitting for enable */
Dilcm = 0; /*CLR DI */
Rwlcm = 0; /*CLR RW */
Datalcm = y; /*MOV P0,Y */
Elcm = 1;_nop_();Elcm = 0;
wtcom(); /* waitting for enable */
Dilcm = 0; /*CLR DI */
Rwlcm = 0; /*CLR RW */
Datalcm = x; /*MOV P0,X */
Elcm = 1;_nop_();Elcm = 0;
}
/********************************/
/*液晶屏初始化 */
/********************************/
void Lcminit(void)
{
cbyte = DISPOFF; /*关闭显示屏 */
WrcmdL(cbyte);
WrcmdM(cbyte);
WrcmdR(cbyte);
cbyte = DISPON; /*打开显示屏 */
WrcmdL(cbyte);
WrcmdM(cbyte);
WrcmdR(cbyte);
cbyte = DISPFIRST; /*定义显示起始行为零 */
WrcmdL(cbyte);
WrcmdM(cbyte);
WrcmdR(cbyte);
Lcmcls();
col=0; /*清屏 */
row=0;
Locatexy();
}
/********************************/
/* 延时 */
/********************************/
void Delay(Uchar MS)
{
Uchar us,usn;
while(MS!=0)
{ usn = 4;
while(usn!=0)
{
us=0xf0;
while (us!=0){us--;};
usn--;
}
MS--;
}
}
/********************************/
//file://定义字符串数组 */
/********************************/
Uchar code STR1[]=
{
0x80,0x81,0x82,0x83,0x84,0x85,
0x86,0x87,0x88,0x89,0x8a,0x8B
};
Uchar code STR2[]="Our friend over the wold";
Uchar code STR3[]="Program by Keil C51 6.12";
Uchar code STR4[]="Thank you ~v~ 1234567890";
/********************************/
/* 定义中文字库 */
/********************************/
Uchar code Hzk[]={
/*茂 C3515 0 */
0x04,0x04,0xC4,0x44,0x5F,0x44,0x44,0xF4,
0x44,0x4F,0x54,0x64,0x44,0x46,0x04,0x00,
0x80,0x40,0x3F,0x00,0x40,0x40,0x20,0x20,
0x13,0x0C,0x18,0x24,0x43,0x80,0xE0,0x00,
/*兴 C4843 1 */
0x00,0xFE,0x4A,0x4A,0x00,0xFE,0xEA,0xAA,
0xAA,0xFE,0x00,0x4A,0x4A,0xFE,0x00,0x00,
0x02,0x83,0x42,0x22,0x12,0x1B,0x02,0x02,
0x02,0x0B,0x12,0x22,0x62,0xC3,0x02,0x00,
/*国 C2590 2 */
0x00,0xFE,0x02,0xD2,0x52,0x52,0xD2,0x3E,
0xD2,0x16,0x1A,0x12,0xFF,0x02,0x00,0x00,
0x00,0xFF,0x50,0x53,0x52,0x4A,0x6B,0x50,
0x4F,0x54,0x7B,0x40,0xFF,0x00,0x00,0x00,
/*际 C2842 3 */
0x00,0xFE,0x22,0xD2,0x0E,0x20,0xB8,0x4F,
0xB2,0x9E,0x80,0x9F,0x72,0x8A,0x06,0x00,
0x00,0xFF,0x04,0x08,0x07,0x21,0x12,0x0A,
0x46,0x82,0x7E,0x06,0x0A,0x12,0x31,0x00,
/*( C0308 4 */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0xC0,0x30,0x08,0x04,0x02,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x03,0x0C,0x10,0x20,0x40,0x00,0x00,
/*广 C2567 5 */
0x00,0x00,0xFC,0x44,0x54,0x54,0x7C,0x55,
0xD6,0x54,0x7C,0x54,0x54,0x44,0x44,0x00,
0x80,0x60,0x1F,0x80,0x9F,0x55,0x35,0x15,
0x1F,0x15,0x15,0x35,0x5F,0x80,0x00,0x00,
/*东 C2211 6 */
0x00,0x08,0xE8,0xA8,0xA8,0xA8,0xA8,0xFF,
0xA8,0xA8,0xA8,0xA8,0xE8,0x0C,0x08,0x00,
0x00,0x40,0x23,0x12,0x0A,0x06,0x02,0xFF,
0x02,0x06,0x0A,0x12,0x23,0x60,0x20,0x00,
/*) C0309 7 */
0x00,0x00,0x02,0x04,0x08,0x30,0xC0,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x40,0x20,0x10,0x0C,0x03,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*有 C5148 8 */
0x04,0x04,0x04,0x84,0xE4,0x3C,0x27,0x24,
0x24,0x24,0x24,0xF4,0x24,0x06,0x04,0x00,
0x04,0x02,0x01,0x00,0xFF,0x09,0x09,0x09,
0x09,0x49,0x89,0x7F,0x00,0x00,0x00,0x00,
/*限 C4762 9 */
0x00,0xFE,0x02,0x22,0xDA,0x06,0x00,0xFE,
0x92,0x92,0x92,0x92,0xFF,0x02,0x00,0x00,
0x00,0xFF,0x08,0x10,0x08,0x07,0x00,0xFF,
0x42,0x24,0x08,0x14,0x22,0x61,0x20,0x00,
/*公 C2511 10 */
0x00,0x00,0x80,0x40,0x30,0x0C,0x00,0xC0,
0x07,0x1A,0x20,0x40,0x80,0x80,0x80,0x00,
0x01,0x01,0x20,0x70,0x28,0x24,0x23,0x20,
0x20,0x28,0x30,0x60,0x00,0x01,0x00,0x00,
/*司 C4330 11 */
0x10,0x10,0x92,0x92,0x92,0x92,0x92,0x92,
0xD2,0x9A,0x12,0x02,0xFF,0x02,0x00,0x00,
0x00,0x00,0x3F,0x10,0x10,0x10,0x10,0x10,
0x3F,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,
};
/****************************************/
/* 定义ASCII字库8列*16行 */
/****************************************/
Uchar code Ezk[]={
/*-文字: --0x20 */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*-文字:!--0x21 */
0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x27,0x00,0x00,0x00,0x00,
/*-文字:"--0x22 */
0x00,0x08,0x04,0x02,0x08,0x04,0x02,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*-文字:#--0x23 */
0x40,0x40,0xF8,0x40,0x40,0xF8,0x40,0x00,
0x04,0x3F,0x04,0x04,0x3F,0x04,0x04,0x00,
/*-文字:$--0x24 */
0x00,0x70,0x88,0xFC,0x08,0x08,0x30,0x00,
0x00,0x1C,0x20,0xFF,0x21,0x22,0x1C,0x00,
/*-文字:%--0x25 */
0xF0,0x08,0xF0,0x80,0x70,0x08,0x00,0x00,
0x00,0x31,0x0E,0x01,0x1E,0x21,0x1E,0x00,
/*-文字:&--0x26 */
0x00,0xF0,0x08,0x88,0x70,0x00,0x00,0x00,
0x1E,0x21,0x23,0x24,0x18,0x16,0x20,0x00,
上一页 [1] [2] [3] [4] [5] 下一页
本文关键字:程序 51单片机,单片机-工控设备 - 51单片机