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

📄 new.c

📁 定时期的计数使用实例
💻 C
字号:
#include<reg51.h>
#include<intrins.h>
#include<math.h>
#define uchar unsigned char

uchar code  duan[]={0x3f,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6f};
sbit P20=P2^0;
sbit P21=P2^1;
sbit P22=P2^2;
sbit P23=P2^3;
sbit P24=P2^4;
																 


void delay_20us(uchar a)
{  uchar time0,i;
for (i=0;i<a;i++)
{
 for (time0=0;time0<10;time0++) ;}
}


 void delay_100ms(uchar e)
{  uchar i,j,b;
for(b=0;b<e;b++)
{
 for(j=0;j<244;j++)
 for (i=0;i<140;i++)  ;
 } }

 


void led(int n)    //数码管显示及数据处理程序 
{ 
   P0 = 0x00; 
P0=duan[n % 10];  //个位 
   P20 = 0; 
 delay_20us(5); 
   P20 = 1; 

   P0 = 0x00; 
P0=duan[n / 10 % 10];  //十位 
   P21 = 0; 
  delay_20us(5);
   P21 = 1; 

  P0 = 0x00; 
P0 =duan[n / 100 % 10];   //百位 
   P22 = 0; 
 delay_20us(5); 
   P22 = 1; 

   P0 = 0x00; 
   P0 = duan[n / 1000 % 10];   //千位 
   P23 = 0; 
  delay_20us(5); 
   P23 = 1;   
}  



void timer0() interrupt 1 ///////////////////	定时一秒
{  uchar i;
   int store;
   TH0=0x3c;TL0=0xb0;i++;

   if(i==19){ TR1=0;TR0=0;  store=TH1;store=(store<<8); store=store+TL1;
   while(1){led(store); }

       }
   }

void timer1() interrupt 3	//////////////////计数
{  TH1=0x00;
   TL1=0x00;
	}

void main(void) 
{ 
  TMOD=0x51;
  TH0=0x3c;
  TL0=0xb0;
  TH1=0;
  TL1=0;
  EA=1;
  ET0=1;
  ET1=1;
  PT0=1;////////
  TR0=1;
  TR1=1;  
 while(1){	 //等待
 }
  
}

 

⌨️ 快捷键说明

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