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

📄 main.c

📁 专用于计数器的检测
💻 C
字号:
/*  ********************************************************  */
#include "REG51STC.H"
#ifndef uchar
#define uchar unsigned char
#endif
#ifndef uint
#define uint unsigned int
#endif
#ifndef ulong
#define ulong unsigned long
#endif
uchar code  dispcode[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
/********************************************************/
sbit JSQ=P1^6;
sbit WDT=P1^4;
data uchar time_sec;
/*****************************************************************************
*          
*功能:系统上电初始化
;     BOUD=57600,由定时器1产生
*****************************************************************************/
void InitializeSystem(void)
{  
	
	TMOD&=0x0f;
	TMOD|=0x21;
	PCON|=0x80;
	SCON=0xf0;   /* MODEL --3,REN=1,SM2=1  */
	TH1=0xd0;
	TL1=0xd0;  //fdh--波特率19200  fah--9600,均为单倍速时  d0,e8
	TR1=1;
	TH0=0xf8;
	TL0=0x30;
	
	time_sec=0;
	
	
	RCAP2H=0xc7;
	RCAP2L=0xc0;
	TH2=RCAP2H;
	TL2=RCAP2L;
	T2CON=0x00;
	TCON=0x01;
	
	
	
	

	TR2=1;
	IP=0x00;
	TR0=1;
   TR1=1;
	IE=0xb3;
	EX0=1;

}
/***************************************************************************
*    中断0:外部中断0
****************************************************************************/
void int_int0(void) interrupt 0 using 1
{	
}
/***************************************************************************
*    中断1:定时器0   12T时40mS中断一次
****************************************************************************/
void int_timer0(void) interrupt 1 using 1
{   

	P1=0xff;
	TH0=0x63;	 
    TL0=0xC0;
	 time_sec++;
	 if(time_sec==8)
	 {
	 	time_sec=0;
	 }
	 P1=dispcode[time_sec];
}
/*****************************************************************************
*         功能:串行中断,接收上位机数据
*****************************************************************************/
void seri_int (void) interrupt 4 using 2
{  
  
	
}
/***************************************************************************
*    中断5:定时器2    12T时:20mS中断1次
*    时长[100:1长2短,50:2短,20:1短,<20:不鸣]
****************************************************************************/
void int_timer2(void) interrupt 5 using 1
{	
	TF2=0;	
	
   
	
	
}

/***************************************************************************
*    TESTJSQ
*    程序设计:JiangMaoZHou
*    创建:2007-03-01
*    修改:2007-03-02    VER:  1.0.0
****************************************************************************/
void main(void)
{ 	  
     InitializeSystem();   //初始化	  
	  //--------------------------------
     while(1) 
	  {	//AUXR &=0xfd;
	  		
	  		WDT_CONTR=0x3c;	
			//WDT_CONTR=0x34;   //WDT  xxxxxxxxxxxxxxxxxxxxxxxxxxx	
	}		
	  
}
/***********************************************************
******************END---->END------->END*******************
***********************************************************/

⌨️ 快捷键说明

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