📄 kkee.c
字号:
#include"reg52.h"
//#include"head.h"
#define uchar unsigned char
uchar keyscan();
void showstr(uchar i,char *p);
uchar code str0[];
uchar code str1[];
uchar code str2[];
uchar code str3[];
uchar code str4[];
uchar code strk[];
uchar code strn[];
uchar code strp[];
void showword(uchar i,uchar j);
void delays();
void delayl();
void wrline(uchar i,uchar *p);
uchar idata bufnu[11];
extern uchar idata num[11];
uchar idata pas[6];
sbit INT_1=P3^3;
save(uchar i)
{
switch(i)
{case 0x01:
P1=0x01;
INT_1=0;
delays();
while(INT_1==0);
INT1=1;
for(i=0;i<=11;i++)
{P1=bufnu[i];
INT1=0;
delays();
while(INT1==0);
INT1=1;
}
num[11]=bufnu[11];
break;
case 0x02:
P1=0x01;
INT_1=0;
delays();
while(INT_1==0);
INT1=1;
for(i=0;i<=11;i++)
{P1=bufnu[i];
INT1=0;
delays();
while(INT_1==0);
INT_1=1;
}
pas[6]=bufnu[6];
break;
}}
kk()
{uchar key;
uchar count;
while (1)
{ key=keyscan();
/********1 ************/
if(key==0x0b)
{
showstr(0x80,str1);
count=0xc0;
while (1)
{key=keyscan();
switch (key)
{ case 0x0c: //取消
count-=2;
if (count<0xc0) {showstr(0xc0,strk); goto out;}
else wrline(count,bufnu);
count++;
break;
case 0x0b:
if(count==0xcb) //确定
{save(0x01);goto out;}
if(count==0xc0) goto next;
break;
case 0xff:break;
default:
if(key==0x0a) //数字
{key=0x00;}
if(count>0xca) break;
bufnu[count-0xc0]=key+0x30;
wrline(count,bufnu);
count++;
}}}
}
/********2 ************/
next:
showstr(0x80,str2);
count=0xc0;
while (1)
{key=keyscan();
switch (key)
{ case 0x0c: //取消
count-=2;
if (count<0xc0) {showstr(0xc0,strk); goto out;}
else wrline(count,bufnu);
count++;
break;
case 0x0b:
if(count==0xc6) //确定
{save(0x02);goto out;}
if(count==0xc0) goto next1;
break;
case 0xff:break;
default:
if(key==0x0a) //数字
{key=0x00;}
if(count>0xc5) break;
bufnu[count-0xc0]=key+0x30;
wrline(count,bufnu);
count++;
}}
/********3 ************/
next1: showstr(0x80,str3);
showstr(0xc0,num);
while(1)
{key=keyscan();
if (key==0x0b) goto next2;
if(key==0x0c) goto out;
}
/********4 ************/
next2: showstr(0x80,str4);
showstr(0xc0,pas);
while(1)
{key=keyscan();
if((key==0x0c)|(key==0x0b)) goto out;
}
out: showstr(0x80,str0);
showstr(0xc0,strk);
}
void readee()
{ uchar i;
P1=0x03; //手机代号
INT_1=0;
delays();
// while(INT_1==0)
// {INT_1=1;}
// INT1=1;
for(i=0;i<11;i++)
{while(INT1==1);
num[i]=P1;
INT_1=1;
}
P1=0x04; //密码代号
INT_1=0;
delays();
// while(INT_1==0)
// {INT_1=1;}
// INT1=1;
for(i=0;i<6;i++)
{while(INT1==1);
pas[i]=P1;
INT_1=1;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -