注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
AT89C51王飞的个人空间 https://home.eeworld.com.cn/space-uid-481742.html [收藏] [复制] [分享] [RSS]
日志

矩阵按键的另一种设计

已有 452 次阅读2013-11-27 20:32 |个人分类:驱动

#include<reg51.h>
/**********************************************************
//Auther:WangFei
//Time:2013.11.27
//Function: delay some time
***********************************************************/
void delay(unsigned int temp)

 unsigned int i;
 for(;i<120;i++)
 {
  temp--;
 }
}
/*********************************************************
//Auther:WangFei
//Time:2013.11.27
//Function: To check which key is pressed
**********************************************************/
void key_scan()
{
 
 unsigned char temp1;
 P2=0XFE;
 if(P2!=0XFE)
 {
  delay(5);
  if(P2!=0XFE)
  {
   temp1=P2;
   switch(temp1)
   {
    case 0xfa:P1=0X01;break;
    case 0xf6:P1=0X02;break;
    //default:P1=0XF3;
   } 
  }
 }
 P2=0XFD;
 if(P2!=0XFD)
 {
  delay(5);
  if(P2!=0XFD)
  {
   temp1=P2;
   switch(temp1)
   {
    case 0xf9:P1=0X04;break;
    case 0xf5:P1=0X08;break;
    //default:P1=0X0C;
   }
  }
 }
}
/********************************************************
//Auther:WangFei
//Time:2013.11.27
//Function: Main
//Return:Void
*********************************************************/
void main()
{
 P1=0;
 while(1)
 {
    key_scan();
 }
}
全部作者的其他最新日志
评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章