📄 sed1520.c
字号:
#include <stdio.h>
#include <..\ATMEL\AT89X51.H>
#include <stdlib.h>
#include <intrins.h>
#include <string.h>
#include <math.h>
#include "AD.H"
//unsigned int val;
unsigned char key0,key,key1,key2,key3,key4,key5;
bit flag=0;
int count=0;
unsigned char sig=3,out=3;
void delay(long time)/////////int time////500//////
{
long i=time,j;
if(i==0){return;}
else
{
while(i)
{
j=5;
while(j){j--;}
i--;
}
}
}
unsigned char Square(unsigned char x)
{
unsigned char i,y=1;
for(i=1;i<=x;i++)
{y=y*2;}
return y;
}
void zhi(unsigned char cc)
{
while(cc!=0)
{cc=cc-1;
P1_7=0;P1_6=0;P1_5=0;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//zhishi
}
}
/*
void zhiup(unsigned char ee)
{
while(ee!=0)
{ee=ee-1;
P1_7=0;P1_6=0;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;//zhishi
}
}
*/
void back(unsigned char dd)
{
while(dd!=0)
{dd=dd-1;
P1_7=0;P1_6=1;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//zhishi
}
}
void hello(unsigned char aa)
{
switch(aa)
{case 1:
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
break;
case 2:
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
break;
case 3:
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
break;
case 4:
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
break;
case 5:
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
break;
case 6:
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;//ok
break;
case 7:
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
break;
case 8:
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=0;P1_5=1;P1_4=1;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//down
P1_7=0;P1_6=1;P1_5=1;P1_4=0;delay(10000);P1_7=1;P1_6=1;P1_5=1;P1_4=1;delay(10000);//ok
break;
}
}
unsigned char pre_Key_Scan()
{
unsigned char Key;
P2_5=0;
P2_6=1;
if (P2_4==0)
{ Key=0x30&0xf0; return Key;}
else if(P2_3==0)
{ Key=0x20&0xf0; return Key;}
else if(P2_2==0)
{ Key=0x10&0xf0; return Key;}
else if(P2_1==0)
{ Key=0x40&0xf0; return Key;}
P2_6=0;
P2_5=1;
if( P2_4== 0 )
{ Key=0x60&0xf0; return Key;}
else if (P2_3== 0 )
{ Key=0x70&0xf0; return Key;}
else if (P2_2== 0 )
{ Key=0x080&0xf0; return Key;}
else if (P2_1== 0 )
{ Key=0x40&0xf0; return Key;}
else {return 0;}
}
unsigned char Key_Scan()
{
unsigned char Key,prekey,prekey1;
P2_5=0;
P2_6=1;
if (P2_4==0)
{ Key=0x30; delay(10); prekey=pre_Key_Scan();delay(10);prekey1=pre_Key_Scan();delay(10);
if( (Key=prekey)&&(Key=prekey1) ){while(P2_4==0) ;} count=0;return Key&0xf0;}
else if(P2_3==0)
{ Key=0x20; delay(10); prekey=pre_Key_Scan();delay(10);prekey1=pre_Key_Scan();delay(10);
if( (Key=prekey)&&(Key=prekey1) ){while(P2_3==0);} count=0; return Key&0xf0;}
else if(P2_2==0)
{ Key=0x10;delay(10); prekey=pre_Key_Scan();delay(10);prekey1=pre_Key_Scan();delay(10);
if( (Key=prekey)&&(Key=prekey1) ){while(P2_2==0); }count=0; return Key&0xf0;}
else if(P2_1==0)
{ Key=0x40;delay(10); prekey=pre_Key_Scan();delay(10);prekey1=pre_Key_Scan();delay(10);
if( (Key=prekey)&&(Key=prekey1) ){while(P2_1==0);} count=0; return Key&0xf0;}
P2_6=0;
P2_5=1;
if( P2_4== 0 )
{ Key=0x60;delay(10); prekey=pre_Key_Scan();delay(10);prekey1=pre_Key_Scan();delay(10);
if( (Key=prekey)&&(Key=prekey1) ){ while(P2_4==0); }count=0; return Key&0xf0;}
else if (P2_3== 0 )
{ Key=0x70;delay(10); prekey=pre_Key_Scan();delay(10);prekey1=pre_Key_Scan();delay(10);
if( (Key=prekey)&&(Key=prekey1) ){while(P2_3==0); } count=0;return Key&0xf0;}
else if (P2_2== 0 )
{ Key=0x080;delay(10); prekey=pre_Key_Scan();delay(10);prekey1=pre_Key_Scan();delay(10);
if( (Key=prekey)&&(Key=prekey1) ){while(P2_2==0); } count=0;return Key&0xf0;}
else if (P2_1== 0 )
{ Key=0x40; delay(10); prekey=pre_Key_Scan();delay(10);prekey1=pre_Key_Scan();delay(10);
if( (Key=prekey)&&(Key=prekey1) ){while(P2_1==0);} count=0;return Key&0xf0;}
else {return 0;}
}
LCDWriteCom1(unsigned char com)
{
bit flag;
A0 = 0;
RW=1;
do{
P0=0xff;
CS1=0;
flag=P0_7;
CS1=1;
}while(flag);
RW=0;
P0=com;
CS1=0;
CS1=1;
}
//向主LCD写数据 /
LCDWriteDat1(unsigned char dat)
{
bit flag;
A0 = 0;
RW=1;
do{
P0=0xff;
CS1=0;
flag=P0_7;
CS1=1;
}while(flag);
A0=1;
RW=0;
P0=dat;
CS1=0;
CS1=1;
}
unsigned char LCDReadDat1()
{
bit flag;
long i;
unsigned char dat;
A0 = 0;
RW=1;
do{
P0=0xff;
CS1=0;
flag=P0_7;
CS1=1;
i++;
}while(flag);
CS1=0;
A0=1;
RW=1;
dat=P0;
CS1=1;
RW=0;
P0=0xff;
RW=1;
CS1=0;
dat=P0;
CS1=1;
return dat;
}
//向从LCD写命令
LCDWriteCom2(unsigned char com)
{
bit flag;
A0 = 0;
RW=1;
do{
P0=0xff;
CS2=0;
flag=P0_7;
CS2=1;
}while(flag);
RW=0;
P0=com;
CS2=0;
CS2=1;
}
//向从LCD写数据
LCDWriteDat2(unsigned char dat)
{
bit flag;
A0 = 0;
RW=1;
do{
P0=0xff;
CS2=0;
flag=P0_7;
CS2=1;
}while(flag);
A0=1;
RW=0;
P0=dat;
CS2=0;
CS2=1;
}
unsigned char LCDReadDat2()
{
bit flag;
long i;
unsigned char dat;
A0 = 0;
RW=1;
do{
P0=0xff;
CS2=0;
flag=P0_7;
CS2=1;
i++;
}while(flag);
CS2 = 0;
A0=1;
RW=1;
dat=P0;
CS2 = 1;
RW=0;
P0=0xff;
RW=1;
CS2 = 0;
dat=P0;
CS2=1;
return dat;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -