AT89S52单片机程序50例(00-50)

源代码在线查看: 00-59秒计时器.c

软件大小: 1701 K
上传用户: fjhgjgjk
关键词: 89S S52 AT 89
下载地址: 免注册下载 普通下载 VIP

相关代码

				//00-59秒计时器,数码管为共阴极。
				
				#include 
				#include 
				
				unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};  //0-9的数码管的段码值
				unsigned char Second;  //定义秒钟变量
				
				//延时子程序
				void delay(void)  //误差0 us
				{
				    unsigned char a,b,c;
				    for(c=167;c>0;c--)
				        for(b=171;b>0;b--)
				            for(a=16;a>0;a--);
				    _nop_;  //if Keil,require use intrins.h
				}
				
				//主程序
				void main(void)
				{
					Second=0;  //初始化秒钟变量
				    P0=table[Second/10];  //P0口为秒钟的十位的段码值
				    P2=table[Second%10];  //P2口为秒钟的个位的段码值
				    while(1)
				    {
				    	delay();  //调用延时子程序
				        Second++;  //秒钟加1
				        if(Second==60)  //秒钟为60时,重新初始化
				        {
				        	Second=0;
				        }
				        P0=table[Second/10];
				        P2=table[Second%10];
				    }
				}			

相关资源