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

📄 thecycleofdigitaldisplay.txt

📁 单片机开发板的数码管循环显示显示内容为0-9循环
💻 TXT
字号:
/******************************************************************
****/
#include <reg52.h>		//头文件
#include <intrins.h>		//头文件
#define uint unsigned int	//宏定义
#define uchar unsigned char	//宏定义
uchar temp,tt,num;              //定义变量temp,定义变量tt.num
//void delay(uint z);
//sbit P00=P0^0;
uchar code table[11]={0xc0,0xf9,0xa4,0xb0,	// 0, 1, 2, 3
				0x99,0x92,0x82,0xf8,0x80,0x90, 0xff};// 4, 5, 6, 7, 8, 9, off 
void main()//进入主程序

{	
	num=0;
	//temp=0xfe;	//赋值
   	//P0=temp;	//赋值
    tt=0;	//赋值
	EA=1;	//开主中断
  	TMOD=0x01;//设置定时器0为工作方式1
	TH0=(65536-50000)/256; //高8位装入65536-50000对256求莫的数值
   	TL0=(65536-50000)%256; //低8位装入65536-50000对256求余的数值
	ET0=1;//开中断0
	TR0=1;//运行控制位,为1时T0开始工作,为0时T0停止工作
	P2=0x00;//让所有数码管同时显示

	while (1)
	{	
		//P00=1;
		if(tt==20)//如果tt=20也就是进入了20次中断,那么temp左移一位。
    	{	
			tt=0;	//赋值
      		
   			P0=table[num];
			num++;
            if(num==10)
			num=0;
		//P00=0;//temp=_crol_(temp,1);	/*_crol_是循环左移,_cror_是循环右移,
			//	 括号内第一个参数temp是要移动的变量。,后面是要移动几位*/
        //P0=temp;	//赋值
        
		}
       // if(tt==20)
	//	{tt=0;        
		//P00=1;
		//}
	} 
}
//中断服务程序//定时器服务程序
//void delay(uint z)
	void exter0() interrupt 1
	{
	TH0=(65536-50000)/256;//高8位装入65536-50000对256求莫的数值
   	TL0=(65536-50000)%256;//低8位装入65536-50000对256求余的数值
    tt++;//定时器计时到了就给tt+1
	}
 


/****************当TH0和TL0送入

⌨️ 快捷键说明

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