?? 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 + -