标题: 扫描键盘这里的if (backup ==0)是如何判断的? [打印本页]

作者: hujia    时间: 2014-12-10 20:21
标题: 扫描键盘这里的if (backup ==0)是如何判断的?
single 18:53:06
#include<reg52.h>
sbit add0=P1^0;
sbit add1=P1^1;
sbit add2=P1^2;
sbit  add3=P1^3;
sbit  eva=P1^4;
sbit keyin1=P2^4;
sbit keyin2=P2^5;
sbit keyin3=P2^6;
sbit  keyin4=P2^7;
unsigned char code ledchar[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
void main()
{
  bit backup=1;
  unsigned char count=0;
  eva=0;
  add3=1;
  add2=0;
  add1=0;
  add0=0;
  P2=0xf7;
  P0=ledchar[count];
  while(1)
  {
    if(keyin4!=backup)
          {  
             if(backup==0)
            { count++;
                       if(count>=10)
                         count=0;
                      P0=ledchar[count];
                      }
             backup=keyin4;
            }
  }
}



作者: hujia    时间: 2014-12-10 20:21
backup不是1吗
作者: admin    时间: 2014-12-10 22:07
当循环到第2次的时候  有一句 backup=keyin4; 所以 backup的状态 既有可能是0也有可能是1. keyin4是一个sbit 就是引脚的状态。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1