⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1000

📁 1000以内计数器
💻
字号:
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar code tab1[]={
0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f};//共阴数码管0123456789
uchar tab2[]=
{0,0,0,0,0,0};//6只数码管显示的数字
uchar count;
sbit dot=P0^7;
void delay(uint z)
{
	uint x,y;
	for(x=z;x>0;x--)
		for(y=112;y>0;y--);
}
void main()
{
	uint i,j;
	P0=0x00;
	P3=0xff;
	TMOD=0x01;
	TH0=(65535-5000)/256;
	TL0=(65535-5000)%256;
	EA=1;
	ET0=1;
	TR0=1;
	while(1)
	{
		j=0x7f;
		for(i=6;i!=0;i--)
		{
			j=_crol_(j,1);
			P3=j;
			P0=tab1[tab2[i-1]];//显示数位
			if(i==3)//在这个数码管加一个小数点
				dot=1;	
			delay(5);
		}	
	}
}
void timer0() interrupt 1
{
	uchar i;
	TH0=(65535-5000)/256;
	TL0=(65535-5000)%256;
	if(++count!=2)
		return;	  //0.1	 S定时
	count=0;
	tab2[0]++;	  //0.1S累加
	for(i=0;i<6;i++)	 //进位处理
	{
		if(tab2[i]==10)	//当一位数增加到十时进一位,并清零
		{
			tab2[i]=0;
			if(i!=5)
				tab2[i+1]++;
		}
	} 
}

⌨️ 快捷键说明

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