- 8
- 0
- 约5.63千字
- 约 12页
- 2019-10-15 发布于江苏
- 举报
C语言源程序
#include AT89X52.H
unsigned char ps[]={1,2,3,4,5};
unsigned char code dispbit[]={0xfe,0xfd,0xfb,0xf7,
0xef,0xdf,0xbf,0x7f};
unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f,
0x77,0x7c,0x39,0x5e,0x79,0x71,
0x00,0x40,0x73,0xff};
unsigned char dispbuf[8]={18,16,16,16,16,16,16,16};
unsigned char dispcount;
unsigned char flashcount;
unsigned char temp;
unsigned char key;
unsigned char keycount;
unsigned char pslen=5;
unsigned char getps[6];
bit keyoverflag;
bit errorflag;
bit rightflag;
unsigned int second3;
unsigned int aa,bb;
unsigned int cc;
bit okflag;
bit alarmflag;
bit hibitflag;
unsigned char oka,okb;
void main(void)
{
unsigned char i,j;
TMOD=0x01;
TH0=(65536-500)/256;
TL0=(65536-500)%256;
TR0=1;
ET0=1;
EA=1;
while(1)
{
P3=0xff;
P3_4=0;
temp=P3;
temp=temp 0x0f;
if (temp!=0x0f)
{
for(i=10;i0;i--)
for(j=248;j0;j--);
temp=P3;
temp=temp 0x0f;
if (temp!=0x0f)
{
temp=P3;
temp=temp 0x0f;
switch(temp)
{
case 0x0e:
key=7;
break;
case 0x0d:
key=8;
break;
case 0x0b:
key=9;
break;
case 0x07:
key=10;
break;
}
temp=P3;
P1_1=~P1_1;
if((key=0) (key10))
{
if(keycount6)
{
getps[keycount]=key;
dispbuf[keycount+2]=19;
}
keycount++;
if(keycount==6)
{
keycount=6;
}
else if(keycount6)
{
keycount=6;
keyoverflag=1;//key overflow
}
}
else if(key==12)//delete key
{
if(keycount0)
{
keycount--;
getps[keycount]=0;
dispbuf[keycount+2]=16;
}
else
{
keyoverflag=1;
}
}
else if(key==15)//enter key
{
if(keycount!=pslen)
{
errorflag=1;
rightflag=0;
second3=0;
}
else
{
for(i=0;ikeycount;i++)
{
if(getps[i]!=ps[i])
{
i=keycount;
errorflag=1;
rightflag=0;
second3=0;
goto a;
}
}
errorflag=0;
rightflag=1;
a: i=keycount;
}
}
temp=temp 0x0f;
while(temp!=0x0f)
{
temp=P3;
temp=temp 0x0f;
}
keyoverflag=0;//?????????
}
}
P3=0xff;
P3_5=0;
temp=P3;
temp=temp 0x0f;
if (temp!=0x0f)
{
for(i=10;i0;i--)
for(j=248;j0;j--);
temp=P3;
temp=temp 0x0f;
if (temp!=0x0f)
{
temp=P3;
temp=temp 0x0f;
switch(temp)
{
case 0x0e:
key=4;
break;
case 0x0d:
key=5;
break;
case 0x0b:
key=6;
您可能关注的文档
最近下载
- 上海市静安区2025届高三高考二模数学试卷(含答案).pdf
- DB2308T 204-2024 机关事务管理公共区域保洁员目标考核要求.pdf VIP
- 汽车设计离合器课程设计.docx VIP
- 电力系统暂态分析(完整课件).pdf VIP
- 《食品添加剂》全套教学课件.pptx
- DB11∕T 3008.6-2018 人力资源服务规范 第6部分:职业指导服务.docx VIP
- DB11∕T 3009-2018 人力资源服务机构等级划分与评定.docx VIP
- DB11∕T 3008.10-2018 人力资源服务规范 第10部分:流动人员人事档案管理服务.docx VIP
- DB11∕T 3008.9-2018 人力资源服务规范 第9部分:人力资源管理咨询服务.docx VIP
- DB11∕T 3008.4-2018 人力资源服务规范 第4部分:信息网络服务.docx VIP
原创力文档

文档评论(0)