#include <REGX52.H>
#include "Delay.h"
#include "LCD1602.h"
#include "MatrixKey.h"
unsigned char k=0; //k=通过键盘矩阵得到的数
unsigned int p,count,a; //p=进位得到的数 count=加的次数 a=通过独立按键加减得到的数
void main()
{
LCD_Init();
LCD_ShowString(1,1,"Password:");
LCD_ShowNum(2,1,k,4);
while(1)
{
k=MatrixKey();
if(k)
{
if(k<=10)
{
if(count<4)
{
p*=10;
p+=k%10;
count++;
}
LCD_ShowNum(2,1,p,4); //显示
}
}
if(P3_0==0)
{
a=k;
a++;
if(a>17)
{
a=1;
}
LCD_ShowNum(2,1,a,4);
}
if(P3_1==0)
{
a=k;
a--;
if(a<0)
{
a=16;
}
LCD_ShowNum(2,1,a,4);
}
}
}
|