这篇文章主要介绍用C语言制作一个按钮控制的简易0~9计数器
用到的软件有:ISIS 7 Professional、Keil uVision2
设计思路:按钮B1实现计数,按一次计数器数字+1,因为只用了单数码管显示器所以只能显示0~9以内的数字。按钮B2实现清零。
基本电路图如下:
使用的代码如下:
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar code count[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x00,0x90};//数码管段码表
sbit key1=P3^2;
sbit key2=P3^3;//定义按键端口
void DelayMS(uint x)//延时
{
uchar t;
while(x--){
for(t=0;t<120;t++);
}
}
void main()
{
uchar i=0;
P0=0x00;
while(1)
{
P0=count[i];
if(key1==0)
{
DelayMS(50);
while(!key1);//按键松手检测,!key1为非零时为真
i++;
}
if(i>9){i=0;}
if(key2==0)
{
DelayMS(50);
i=0;
}
}
}
/*仅供学习参考*/