导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→矩阵键盘源代码

* 27517: 矩阵键盘源代码

   sifan1157 
sifan1157发表的帖子 

 矩阵键盘源代码
//4*4键盘检测程序,按下键后相应的代码显示在数码管上

sbit duan=P2^6;
sbit wei=P2^7;
         
unsigned char j,k,temp,key;

unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
                        0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
display(unsigned char num)
{
         P0=table[num];
           duan=1;
         duan=0;
         P0=0xfe;
         wei=1;
         wei=0;
}
void main()
{
  duan=0;
  wei=0;
  while(1)
  {
    P3=0xfe;
    temp=P3;
      {
       
        switch(temp)
        {
          case 0xee:
               key=0;
               break;

          case 0xde:
               key=1;
               break;

          case 0xbe:
               key=2;
               break;

          case 0x7e:
               key=3;
               break;
         }
         while(temp!=0xf0)
         {
           temp=P3;
           temp=temp&0xf0;
         ; 
         }
         
        display(key);

    
    }
    P3=0xfd;
    temp=P3;
      {
        
        switch(temp)
        {
          case 0xed:
               key=4;
               break;

          case 0xdd:
               key=5;
               break;

          case 0xbd:
               key=6;
               break;

          case 0x7d:
               key=7;
               break;
         }
         while(temp!=0xf0)
         {
           temp=P3;
           temp=temp&0xf0;
           
         }
      
         display(key);

    
      }
    P3=0xfb;
   
      {
        temp=P3;
        switch(temp)
        {
          case 0xeb:
               key=8;
               break;

          case 0xdb:
               key=9;
               break;

          case 0xbb:
               key=10;
               break;

          case 0x7b:
               key=11;
               break;
         }
         while(temp!=0xf0)
         {
          temp=P3;
         temp=temp&0xf0;
          
         }
        
        display(key);
   
      
      }
    P3=0xf7;
    temp=P3;
  
      {
        temp=P3;
        switch(temp)
        {
          case 0xe7:
               key=12;
               break;

          case 0xd7:
               key=13;
               break;

          case 0xb7:
               key=14;
               break;

          case 0x77:
               key=15;
               break;
         }
         while(temp!=0xf0)
         {
           temp=P3;
           temp=temp&0xf0;
           
         }
         
        display(key);
 
     
    }
  }
}  
代理销售STM32芯片、最小系统开发学习板(各种档次芯片开发学习板188元以下)
代理销售台达PLC、变频器等工控产品。
销售 51实验板   销售 51学习板   销售 51最小系统板  销售 51开发板 
销售 89C51F040开发板   销售 89C51F020开发板 销售 ADUC0832开发板
销售 51工控板和例程  销售 51工控板和例程  销售 51工控板和例程
提供课程设计、实验学习51系统板,和多达40多个例程,只需150元,只相当一个开发板的价格、你还可获得我们的在线服务。
为广大学子提供优秀的毕设计方案和再学习机会,只需1000元学习、毕业论文两不误。
长期提供嵌入式培训;三菱PLC、台达PLC和欧母龙PLC的编程欧培训;组态王开发培训;Protol 99应用培训等软硬件设计培训服务。
以我们的系统开以方案为您提供充分的学习平台,用我们实时的交流平台为您带来技术上质的飞越,
重庆市优易特电子
联系人:行卫军
电话:023-62111023 023-68659661  023-62209634
网址:    <;  ;     
单片机菜鸟群:17373243 单片机中级学习群:(会员才能加入)
QQ:370302924
我们的服务终止是:用我们的技术给你带来方便和效益。


发表时间:2008年3月11日17:05:00

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:世上最强的彩色抄板软件CBR和PCB返原理图软件P2S世上最强的<彩色抄板软件CBR 
[下一篇帖子]:长期供应 NXP ARM 芯片深圳博格达科技主营嵌入处理器,长期销售下