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

📄 新.c

📁 这里是电子密码锁的全部设计过程
💻 C
字号:
/* 4*4键盘+lcd1602显示*/
/* 作者QQ:497259320 */
/* 2007-12-8 */
#include"at89x51.h"
#include"lcd.h"		  //包含lch文件
 uchar sw(uchar a);	  
 uchar s,m,n,p=0;
 void jp(void);
 uchar code sz[]="The number is:";
 /*****取键盘数******/
 uchar sw(uchar a)
 {
   uchar k;
   switch(a)
   {
    case 1: k=0;break;
	case 2: k=1;break;
	case 4: k=2;break;
	case 8:	k=3;break;
	default: break;
   }
   	return k;
 }
/****键盘程序****/
void jp(void)
{
  uchar b;
  P3=0x0f;
  delay(1);
  if(P3!=0x0f)
  {
    P3=0x0f;
	delay(5);
	b=P3;
	if(b!=0x0f)
	{
	  s=b^0x0f;
	  m=sw(s);
	  P3=0xf0;
	  delay(1);
	  if(P3!=0xf0)
	  {
	  b=P3;
	  s=b^0xf0;
	  s=(s/16)&0x0f;
	  n=sw(s);
	  p=4*m+n;
	  };
	}
  }

}

void main()
{
 uchar i,j;
 
 
  
   init();		//初始化
   clear(); 	//清屏
   xy(1,0);
  for(i=0;i<=13;i++)	//显示 The number is:
  {
    write_data(sz[i]);
	delay(100);
   }
/*****显示按键的值****/
  jp();
   do
   {
   xy(2,0);
   j=p;
   P1=p;
   write_data((p/10)+48);	 /*和ASCII值对应就得加上48*/ 
   delay(10);
   write_data((p%10)+48);
   delay(10);
  for(;;)			/*有键按下才可以跳出*/
  {
   jp();delay(1);
   if(p!=j)
   break;
  }
  }
   while(1);
 }
   
 
  
 






  
   	


⌨️ 快捷键说明

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