0-99秒计数器.c

来自「10+0-99计数器proteus仿真」· C语言 代码 · 共 35 行

C
35
字号
#include <AT89X51.H> 
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66, 
                            0x6d,0x7d,0x07,0x7f,0x6f}; //0-9显示代码
unsigned char Count; 
void delay10ms(void)   //延时10ms函数
{ 
  unsigned char i,j; 
  for(i=20;i>0;i--) 
  for(j=248;j>0;j--); 
} 
void main(void) 
{ 
  Count=0; 
  P0=table[Count/10]; //定义P0口为十位显示位
  P2=table[Count%10]; //定义P2口为个位显示位
  while(1) 
    { 
      if(P3_7==0) //查询P3.7为0则延时
        { 
          delay10ms(); //调用延时函数
          if(P3_7==0) //延时后再查询P3.7脚,以去抖动.如确实为0,则计数加1
            { 
              Count++; 
              if(Count==100) //查询计数是否到100,如果到则清零
                { 
                  Count=0; 
                } 
              P0=table[Count/10]; 
              P2=table[Count%10]; 
              while(P3_7==0); 
            } 
        } 
    } 
} 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?