标题: 100以内按键计数单片机代码 [打印本页]

作者: king_zhang    时间: 2017-6-12 23:48
标题: 100以内按键计数单片机代码
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar code DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};
uchar Count=0;
//主程序
void main()
{
P0=0x00;     
P2=0x00;
TMOD=0x06;    //计数器T0方式2
TH0=TL0=256-1;   //计数值为1
ET0=1;     //允许T0中断
EX0=1;     //允许INT0中断
EA=1;     //允许CPU中断
IP=0x02;    //设置优先级,T0高于INT0
IT0=1;     //INT0中断触发方式为下降沿触发
TR0=1;     //启动T0
while(1)
{
  P0=DSY_CODE[Count/10];
  P2=DSY_CODE[Count%10];
}
}
//T0计数器中断函数
void Key_Counter() interrupt 1
{
Count=(Count+1)%100; //因为只有两位数码管,计数控制在100以内(00~99)
}
//INT0中断函数
void Clear_Counter() interrupt 0
{
Count=0;
}






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