微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 关于学校的学习版,4*4矩阵键盘的检测程序问题

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

时间:10-02 整理:3721RD 点击:
这个程序是按下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;
   }

学习板电路图,这个按键与74ls44相连又该如何检测呐


就是上面的程序只能亮一次,第二次就不亮了

哈哈支持一下吧

学习版和我们的好像

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top