Ⅰ 51单片机 按键按下去 计数一次 程序应该怎么写
在按键按下后,用循环语句,等待抬起计数
if(按键按下)
{
延时;
if(按键按下)
{
while(按键没有松开);//如果按键没有松开,程序会停在这里
count++;//按键松开后,程序会运行到这里,计数值加1
}
}
Ⅱ 用C语言如何开51单片机的计数器,最好编个实例程序
#include <reg51.h>
#define uchar unsigend uchar
#define uint unsigned int
unsigned char code LED7Code[] = {~0x3F,~0x06,~0x5B,~0x4F,~0x66,~0x6D,~0x7D,~0x07,~0x7F,~0x6F,~0x77,~0x7C,~0x39,~0x5E,~0x79,~0x71};//数码管段码
void main()
{
uint k;
TMOD=0X50;//设置模式为1,计数模式
TH1=0X00;
TL1=0X00;//初始值设定
IE=0X00;//关全局中断
TR1=1;//开定时计数器1运行
while(1)
{
if(TL1==16)//进行判断,为16时,计数值归零
TL1=0X00;
k=TL1;
P0=LED7Code[k];//数码管进行显示
}
}
此程序目的见http://..com/question/350774230.html