基于51单片机的简易计数器设计c程序

如题所述

#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar code ledtab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//0-9
uchar scanled;
uchar disdat[4];
uint ss,time;
sbit led=P1^0;
void dischg()
{
disdat[3]=ss%10;
disdat[2]=(ss/10)%10;
disdat[1]=(ss/100)%10;
disdat[0]=(ss/1000)%10;
}
void t0isr() interrupt 1 
{
ss++;
dischg();
}
void t1isr() interrupt 3 //显示
{
TH1=(65536-5000)/256;
TL1=(65536-5000)%256;
P2=1<<scanled;
P0=~ledtab[disdat[scanled]];
scanled++;
scanled%=4;
time++;
if(time>100){time=0;led=~led;}
}
main()

{
TMOD=0x16;
TH0=0xff;
TL0=0xff;
TH1=(65536-5000)/256;
TL1=(65536-5000)%256;
TR1=1;
TR0=1;
ET0=1;
ET1=1;
EA=1;
led=0;
scanled=0;
ss=0;
dischg();
while(1);
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-06-23
计数器在物流、企业生产线生产管理和商场、旅游景点等许多公共场所有着广泛的应用,本文根据遮光式感应的原理,利用AT89C51单板机设计了一款具有数据显示和声音提醒的计数器电路,根据这一电路用C语言编写了系统运行和控制程序.实际应用时只需将这一系统稍加以改动和扩充,就可以较好嵌入到公共场所和企业生产自动管理系统之中.
相似回答