⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 function.c

📁 单片机开发的电子密码锁
💻 C
字号:

//-------------------超级用户检测----------------
void checksuper(void)				   		
{										   	
	unsigned char i;
	if(error_flag==1) 			 //若普通密码通过验证,则不验证超级密码
	{	
		error_flag=0;
		for(i=0;i<6;i++)
		{
			if(userpsw[i]!=superpsw[i])  {error_flag=1;break;}
		}
	}
}

//--------------------密码检验--------------
void checkpsw(void)				   		
{										   	
	unsigned char i;
	error_flag=0;
	for(i=0;i<6;i++)
	{
		if(userpsw[i]!=syspsw[i])  {error_flag=1;break;}
	}
}
//--------------------密码输入--------------

void inputpsw(void)					  
{
	unsigned char i;
	for(i=0;i<6;i++)  userpsw[i]=0;
	GotoXY(0,0); 
	Print("input psw:");
	GotoXY(12,1);
	Print("lm:");
	LCD_Write(1,time+0x30);		
	for(i=0;i<6;)
	{				
		flag=0;
		while(flag==0);
		if(key=='*') 	 	{ GotoXY(i-1,1);LCD_Write(1,' ');if(i>0) userpsw[--i]=0;}
		else if(key=='#') 	{ GotoXY(i,1);LCD_Write(1,'#');break;}
		else 				{ GotoXY(i,1);LCD_Write(1,'*');userpsw[i++]=key;}
	}

	ltime=0;
	while(ltime<20);
}
//--------------------密码设定---------------
void setpsw(void)					
{
	unsigned char i;
	GotoXY(0,0); 
	Print("set you psw:");
	GotoXY(0,1); 		
	for(i=0;i<6;i++)
	{
		flag=0;
		while(flag==0);
		if(key=='#') break;
		syspsw[i]=key;
		LCD_Write(1,key+0x30);
		
	}
	ltime=0;
	while(ltime<20);
	LCD_Write(0,1);
	GotoXY(0,1); 
	Print("set ok!");

	ltime=0;
	while(ltime<50);		//显示欢迎信息时间
	LCD_Write(0,1);

}

//------------------正确处理------------------------
void right(void)
{
 	LCD_Write(0,1);
	GotoXY(10,0);
	Print("open!");
	ltime=0;
	while(ltime<40);
	GotoXY(10,0);
	Print("close"); 
	ltime=0;
	while(ltime<40);
	LCD_Write(0,1);
}
//----------------- 错误处理-------------------------
void error(void)
{
	LCD_Write(0,1);
	GotoXY(0,0);
	Print("lost?");
	ltime=0;
	while(ltime<20);               
	LCD_Write(0,1);
	time--;
}
//-------------------封锁系统-------------------------
void lock(void)
{
	LCD_Write(0,1);
	GotoXY(0,0);
	Print("warning!!!");
	GotoXY(0,1);
	Print("keep away!");
	ltime=0;
	while(ltime<200);                
	LCD_Write(0,1);	
}	 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -