📄 int-51.c
字号:
/*=========================================================
* 开发环境:Keil uVision3 *
* 软件名称: *
* 开发日期:2007/1/10 *
* 开 发 者:LPC *
=========================================================*/
/*加入头文件*/
#include<W77C32.h> //W77E58头文件
#include<intrins.h> //
#include<stdio.h> //
#include<stdlib.h> //
#include<TYPE.H> //声明定义
#include<OUTTYPE.H> //声明字库
#include<INCLUDES.H> //声明所有子函数
//=======================================================//
/*******************中断函数开始**************************/
//=======================================================//
/*=========================================================
函数名:TMR0()
功能:定时中断0函数
入口参数:无
出口参数:无
=========================================================*/
void TMR0() interrupt 1 //T0中断函数
{
TF0=0; //清楚T0中断标志位
TH0=0x4C; //重新装入50ms初值
TL0=0x00; //
TR0=1; //启动T0
Count++; //计数器+1
Count_RealTime++; //计数器+1
Count1++; //液晶扫描计数器
Count2--; //巡检计数器
Count3++; //关闭文件计数器
if(Count>19)
{
Count=0; //清零计数器
Wdog=~Wdog; //喂狗
Run=~Run; //指示灯闪烁
}
if(Count1>72000) //1小时定时标志
{
TMR0_Flag=1; //清除屏幕
Count1=0; //
}
if(Count2<=0) //30分钟巡检计数值
{
WarnTest_Flag=1; //巡检标志位置位
Count2=36000; //巡检计数器清零
}
if(Count3>200) //10秒不操作,文件系统关闭
{
FileShut_Flag=1; //置高关闭文件标志位
Count3=0; //清除计数器
}
if(Count_RealTime>9) //500ms定时标志
{
RealTime_Flag=1; //
Count_RealTime=0; //
}
if(DispDelay_Flag) //如果延时标志位为高,则说明要求延时显示
{
Count4++; //计数器自加
if(Count4>=20) //如果延时1s时间到
{
DispDelay_Flag=0; //延时显示标志位清零
Count4=0; //计数器清零
DispOver_Flag=1; //显示结束标志位置高
}
}
}
//=======================================================//
/*******************中断函数结束**************************/
//=======================================================//
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -