m/******************************************************
-¹¦ÄÜ£ºÓÒÑ­»·Î»ÒÆ
-²ÎÊý£ºdat:ÐèλÒƵÄÁ¿ n:λÒƵÄλÊý
-·µ»Ø£ºÎ»ÒƺóµÄÁ¿
ÕûÊýÑ­»·ÓÒÒÆ
******************************************************/
unsigned int iror(unsigned int dat,unsigned int n)
{
unsigned int i;
n%=16;
if(n==0)
{
return dat;
}
for(i=1;i<=n;i++)
{
if(dat&0x0001)
{
dat>>=1;
dat|=0x8000;
}
else
{
dat>>=1;
}
}
return dat;
}
/******************************************/
void lay(uchar m)
{
uchar x,y;
for(x=m;x>0;x--)
for(y=20;y>0;y--);
}
/******************************************************
-¹¦ÄÜ£ºÓÒÑ­»·Î»ÒÆ
-²ÎÊý£ºdat:ÐèλÒƵÄÁ¿ n:λÒƵÄλÊý
-·µ»Ø£ºÎ»ÒƺóµÄÁ¿
×Ö·ûÑ­»·ÓÒÒÆ
******************************************************/
unsigned char cror(unsigned char dat,unsigned char n)
{
unsigned char i;
n%=8;
if(n==0)
{
return dat;
}
for(i=1;i<=n;i++)
{
if(dat&0x01)
{
dat>>=1;
dat|=0x80;
}
else
{
dat>>=1;
}
}
return dat;
}
/**********LCM045Çý¶¯²¿·Ö*********************/
void wrt_com(uint z) //Òº¾§Ð´ÃüÁî
{
int i,t;
CS_0;
// lay(5);
delay_ms(5);
for(i=11;i>=0;i--)
{
WR_0;
if(i==11)
DA_1;
else if(i==10||i==9)
DA_0;
else
{
t=iror(z,i);
// DATA=1&t;
if((1&t)==1)
{
DA_1;
}
else
{
DA_0;
}
}
WR_1;
// lay(5);
delay_ms(5);
if(i==-1)
break;
}
CS_1;
//lay(10);
delay_ms(10);
}
void wrt_s(uchar a,uchar b,uchar c,uchar d) //Òº¾§Á¬ÐøдÊý¾Ý
{
uchar q=0,m,num[4];
int s=7,t,i;
m=0;
num[0]=display[a];
num[1]=display;
num[2]=display[c];
num[3]=display[d];
CS_0;
// lay(1);
delay_ms(1);
for(i=9;i>=0;i--)
{
WR_0;
// lay(1);
delay_ms(1);
if(i==9)
DA_1;
else if(i>0&&i<9)
{ t=cror(0x56,(i-1));
// DATA=1&t;
if((1&t)==1)
{
DA_1;
}
else
{
DA_0;
}
}
if(i==0)
{ m++;
if(m>16&&m<21)
{ DA_0;
i++;
}
else
{
t=iror(num[q],s);
// DATA=1&t;
if((1&t)==1)
{
DA_1;
}
else
{
DA_0;
}
s--;
if(s==-1&&q==3)
break;
i++;
if(s==-1)
{
q++;
s=7;
}
}
}
// lay(1);
delay_ms(1);
WR_1;
//lay(1);
delay_ms(1);
}
CS_1;
// lay(1);
delay_ms(1);
}
void wrt_data(uint z) //Òº¾§µ¥¶ÀдÊý¾Ý
{
uint t;
int i;
CS_0;
// lay(5);
delay_ms(5);
for(i=12;i>=0;i--)
{
WR_0;
if(i==12)
DA_1;
else if(i==11)
DA_0;
else if(i==10)
DA_1;
else
{
t=iror(z,i);
// DATA=1&t;
if((1&t)==1)
{
DA_1;
}
else
{
DA_0;
}
}
WR_1;
// lay(5);
delay_ms(5);
if(i==0)
break;
}
CS_1;
// lay(10);
delay_ms(10);
}
void set_lcm045(void) //³õʼ»¯£»
{
uchar t,j=0;
int i;
delay_ms(30);
CS_1;
WR_1;
DA_1;
wrt_com(0x29);
wrt_com(0x18);
wrt_com(0x01);
wrt_com(0x03);
// wrt_com(0x852);
// wrt_com(0x830);
// wrt_com(0x802);
// wrt_com(0x806);
delay_ms(1);
CS_0;
// lay(1);
delay_ms(1);
for(i=9;i>=0;i--)
{
WR_0;
// lay(1);
delay_ms(1);
if(i==9)
DA_1;
else if(i>0&&i<9)
{
t=cror(0x55,(i-1));
//DATA=1&t;
if((1&t)==1)
{
DA_1;
}
else
{
DA_0;
}
}
else
{ DA_0;i++;j++;
if(j==45)
break;
}
// lay(1);
delay_ms(1);
WR_1;
// lay(1);
delay_ms(1);
}
CS_1;
// lay(1);
delay_ms(1);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>