⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 6041.c

📁 此文件为ZCM6041型液晶驱动程序 是我调式成功的
💻 C
字号:
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long


sbit di =P1^3;
sbit wr =P1^4;
sbit cs =P1^5;


void delay(ulong v);

void delay(ulong v)
{
  while(v!=0)v--;
}



void wcode(uchar c)
{
uchar a;
di=1;
wr=0;
delay(3);
wr=1;
delay(3);
wr=0;
di=0;
wr=0;
delay(3);
wr=1;
delay(3);
wr=0;
di=0;
wr=0;
delay(3);
wr=1;
delay(3);
wr=0;
for(a=0;a<8;a++)
{
if((c&0x80)!=0)di=1;
else di=0;
c=c<<1;
wr=0;
delay(3);
wr=1;
delay(3);
wr=0;
}
di=0;
wr=0;
delay(3);
wr=1;
delay(3);
wr=0;
}
void wdata(uchar ads,uchar da)
{
uchar a;
di=1;
wr=0;
delay(3);
wr=1;
delay(3);
wr=0;
di=0;
wr=0;
delay(3);
wr=1;
delay(3);
wr=0;
di=1;
wr=0;
delay(3);
wr=1;
delay(3);
wr=0;
for(a=0;a<6;a++)
{
if((ads&0x20)!=0)di=1;
else di=0;
ads=ads<<1;
wr=0;
delay(3);
wr=1;
delay(3);
wr=0;
}
for(a=0;a<4;a++)
{
if((da&0x08)!=0)di=1;
else di=0;
da=da<<1;
wr=0;
delay(3);
wr=1;
delay(3);
wr=0;
}
}



void lcdinitial(void)
{
cs=0;
wcode(0x01);/*sys en*/ 
cs=1;
cs=0;
wcode(0x05);/*WDT DISABLE*/
cs=1;
cs=0;
wcode(0x04);/*TIMER DISABLE*/
cs=1;
cs=0;
wcode(0x29);/*1/4 DUTY*/
cs=1;
cs=0;
wcode(0x03); /*LCD ON*/
cs=1;
}

void clear(void)
{  uchar i;
   for(i=0;i<10;i++)
   {
       cs=0;
	 wdata(i,0x0);
	 cs=1;
	 }
}


key_check()
{    uchar sw;
        sw=P1;

       
          if((sw&0x04)==0x00)
               if((sw&0x02)==0x00)
                   return(3);
               else   return(2);
          else
                if((sw&0x02)==0x00)
                     return(1);
                else   return(0);    				 
}

disp_1()
{
clear();
delay(100);
cs=0;
wdata(9,0x03);
cs=1;
cs=0;
wdata(2,0x01);
cs=1;
cs=0;
wdata(5,0x03);
cs=1;
cs=0;
wdata(6,0x0d);
cs=1;
cs=0;
wdata(8,0x03);
cs=1;
cs=0;
wdata(7,0x0d);
cs=1;
cs=0;
wdata(0,0x05);
cs=1;
cs=0;
wdata(1,0x0f);
cs=1;
delay(100);


cs=0;
wdata(2,0x03);
cs=1;
delay(10000);
cs=0;
wdata(3,0x01);
cs=1;
delay(10000);
cs=0;
wdata(3,0x03);
cs=1;
delay(10000);
cs=0;
wdata(3,0x0b);
cs=1;
delay(10000);
cs=0;
wdata(3,0x0f);
cs=1;
delay(10000);

}

disp_2()
{
cs=0;
wdata(9,0x05);
cs=1;
cs=0;
wdata(2,0x03);
cs=1;
cs=0;
wdata(3,0x0f);
cs=1;
cs=0;
wdata(5,0x03);
cs=1;
cs=0;
wdata(6,0x0d);
cs=1;
cs=0;
wdata(8,0x03);
cs=1;
cs=0;
wdata(7,0x0d);
cs=1;
cs=0;
wdata(0,0x05);
cs=1;
cs=0;
wdata(1,0x0f);
cs=1;
delay(10000);
cs=0;
wdata(2,0x03);
cs=1;
cs=0;
wdata(3,0x0b);
cs=1;
cs=0;
wdata(5,0x05);
cs=1;
cs=0;
wdata(6,0x00);
cs=1;
cs=0;
wdata(8,0x03);
cs=1;
cs=0;
wdata(7,0x0d);
cs=1;
cs=0;
wdata(0,0x07);
cs=1;
cs=0;
wdata(1,0x0b);
cs=1;
delay(10000);
cs=0;
wdata(2,0x03);
cs=1;
cs=0;
wdata(3,0x03);
cs=1;
cs=0;
wdata(5,0x05);
cs=1;
cs=0;
wdata(6,0x00);
cs=1;
cs=0;
wdata(8,0x03);
cs=1;
cs=0;
wdata(7,0x0d);
cs=1;
cs=0;
wdata(0,0x07);
cs=1;
cs=0;
wdata(1,0x0f);
cs=1;
delay(10000);
cs=0;
wdata(2,0x03);
cs=1;
cs=0;
wdata(3,0x01);
cs=1;
cs=0;
wdata(5,0x05);
cs=1;
cs=0;
wdata(6,0x00);
cs=1;
cs=0;
wdata(8,0x03);
cs=1;
cs=0;
wdata(7,0x0d);
cs=1;
cs=0;
wdata(0,0x05);
cs=1;
cs=0;
wdata(1,0x01);
cs=1;
delay(10000);
cs=0;
wdata(2,0x03);
cs=1;
cs=0;
wdata(3,0x00);
cs=1;
cs=0;
wdata(5,0x05);
cs=1;
cs=0;
wdata(6,0x00);
cs=1;
cs=0;
wdata(8,0x03);
cs=1;
cs=0;
wdata(7,0x0d);
cs=1;
cs=0;
wdata(0,0x06);
cs=1;
cs=0;
wdata(1,0x0f);
cs=1;
delay(10000);
cs=0;
wdata(2,0x01);
cs=1;
cs=0;
wdata(3,0x00);
cs=1;
delay(10000);
}


disp_3()
{
 clear();
delay(100);
cs=0;
wdata(9,0x09);
cs=1;
cs=0;
wdata(2,0x03);
cs=1;
cs=0;
wdata(3,0x0f);
cs=1;
delay(100000);
}


   
main()
{
uchar o;
lcdinitial();
clear();
cs=0;
wdata(9,0x01);
cs=1;
while(1)
{
for(o=0;o<31;o++)
{
    cs=0;
	wdata(o,0x0f);
	cs=1;
	}
    delay(10000);
     disp_1();
 delay(10000);
	 disp_2();
 delay(10000);
	 disp_3();
	 
	 delay(10000);
	  
}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -