关于学校的学习版,4*4矩阵键盘的检测程序问题

2019-07-16 01:27发布

这个程序是按下K0,led灯亮 再按下灯灭
#include<regx51.h>
unsigned char status=0xff;
sbit Ledce=P1^2;
sbit Keyce=P1^3;
sbit Digce=P1^1;
void delayms(unsigned int );
void Keycan();
  void main()
  {
    P0=0x00;
        P1=0x0c;
   while(1)
   {
    Keycan();
        Ledce=0;
        P0=status;
        delayms(10);
        Ledce=1;
        }
  }
  void delayms(unsigned int x)
  {
        int j=0;
        for(x;x>0;x--)
        for(j=123;j>0;j--);
  }
  void  Keycan()
   {
         unsigned char temp;
         P0=0x00;
         Ledce=1;
         Digce=1;
         P0=0xfe;
         Digce=0;
         P0=0xff;
          Keyce=0;
         temp=P0;
         temp=temp&0x01;
         while(temp!=0x01)
           {
                  delayms(10);
                  temp=P0;
                  temp=temp&0x01;
                  while(temp==0x00)
                  {
                                status=~status;
                  }
                  while(temp==0x00)
                  {
                        temp=P0;
                        temp=temp&0x01;
                  }
           }
           Keyce=1;
   }
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
voidtogether
1楼-- · 2019-07-16 04:57
 精彩回答 2  元偷偷看……
voidtogether
2楼-- · 2019-07-16 05:34
就是上面的程序只能亮一次,第二次就不亮了
博易科技
3楼-- · 2019-07-16 09:28
哈哈支持一下吧
技术员小张
4楼-- · 2019-07-16 13:52
 精彩回答 2  元偷偷看……

一周热门 更多>