C语言菜鸟一个,希望有高手帮忙解答下。
程序代码:void board_process( void )
{
INT8U i,j;
for(i=0;i<4;i++)
{
if(get_key())
{
password[i]=get_key();
}
}
for(j=0;j<4;j++) //比较密码
{
if(password[j]==rightpassword[j])
{
bPass=1;
DisplayListChar(1,1,"password right");
}
else
{
bWarn=1;
DisplayListChar(1,1,"password error");
}
}
}以上是我自己写的,主要目的是从键盘上获取一个四个数的密码,再和程序设定好的密码进行比较,错误的话蜂鸣器就连响三声,液晶显示password error。程序下载好不等我按键蜂鸣器就响了。
程序代码:#include "include.h"
INT8U KeyTime = 0;
INT8U get_key(void)
{
//uchar tmp=0;
SET_LINE1;
SET_LINE2;
CLR_LINE1;
nop();
if( ( STU_ROW1 == 0 ) && ( !KeyTime ) )
{
KeyTime = KEY_DELAY;
return KEY_1;
}
else if( ( STU_ROW2 == 0 ) && ( !KeyTime ) )
{
KeyTime = KEY_DELAY;
return KEY_2;
}
SET_LINE1;
SET_LINE2;
CLR_LINE2;
nop();
if( ( STU_ROW1 == 0 ) && ( !KeyTime ) )
{
KeyTime = KEY_DELAY;
return KEY_3;
}
else if( ( STU_ROW2 == 0 ) && ( !KeyTime ) )
{
KeyTime = KEY_DELAY;
return KEY_4;
}
return 0;
}这个是买的模块里给的按键程序,。
希望有高手指点下,不胜感激!










