您的位置:首页技术文栏单片机C51
内容搜索:
阅读内容
背景:#EDF0F5 #FAFBE6 #FFF2E2 #FDE6E0 #F3FFE1 #DAFAF3 #EAEAEF 默认  

单片机4*4键盘扫描C51程序

[日期:2008-07-03 ] [来源:东哥单片机学习网 www.picavr.com 整理 作者:佚名] [字体: (投递新闻)
uchar kbscan(void)          /*键扫描函数*/
{
uchar j;
   uchar sccode,recode;
   P2=0x0f;            /*发0行扫描码*/
   if((P2 & 0x0f)!= 0x0f)       /*若有键按下*/
   {
   dlms();
    if((P2&0x0f)!= 0x0f)       /*逐行扫描初值*/
     {
       sccode=0xfe;
    for(j=4;j>0;j--)
    {
       while((sccode&0x10)!=0)
        {
          P2=sccode;            /*输出行扫描码*/
          if((P2&0xf0)!=0xf0)   /*本行有键按下*/
           {
             recode=(P2&0xf0)|0x0f;
             return((~sccode)+(~recode));  /*返回特征字节码*/
      }
         else
            sccode=(sccode<<1)|0x01;       /*行扫描码做移一位*/
      }
      }
     }
    }
    return(0);                           /*无键按下,返回0值*/
}
阅读:
录入:JETTA

推荐 】 【 打印
本文评论
      全部评论
发表评论


点评: 字数
姓名:
赞助商广告