** 日 期: 2007年4月19日
**-------------------------------------------------------------------------------
** 修改人:
** 日 期:
**-------------------------------------------------------------------------------
*********************************************************************************/
void Timer1_IRQ(void) interrupt 3 using 2
{
RevTimeH++;
}
void IRQ_int0() interrupt 0 using 2 //INT1中断服务程序,使用第二组寄存器
{
EX0 = 0;
TR1 = 0;
RevTimeL = 256 * TH1 + TL1;
RevTime = RevTimeH * 65536 + RevTimeL;
if(RevTime < 1000)
{
BellingFlag = 1;
}
else
{
BellingFlag = 0;
}
DisplayUpdataFlag = 1;
TH1 = 0;
TL1 = 0;
}
/*******************************************************************************
** 函数名称: Updata_AD9850
** 功能描述: 更新AD9850(更新频率、相位数据)
**
** 输 入: 无
**
** 输 出: 无
**
** 全局变量:
** 调用模块: 无
**
** 作 者:** 日 期: 2007年4月19日
**-------------------------------------------------------------------------------
** 修改人:
** 日 期:
**-------------------------------------------------------------------------------
*********************************************************************************/
void UpdataLCD(void)
{
uint8 temp8;
uint32 teMP32;
temp32 = RevTime;
DisplayBuff[16] = temp32 / 100000 + 48;
temp32 %= 100000;
DisplayBuff[17] = temp32 / 10000 + 48;
temp32 %= 10000;
DisplayBuff[18] = temp32 / 1000 + 48;
temp32 %= 1000;
DisplayBuff[19] = temp32 / 100 + 48;
temp32 %= 100;
DisplayBuff[20] = temp32 / 10 + 48;
temp8 = temp32 % 10;
DisplayBuff[21] = temp8 + 48;
LCDDisplay(DisplayBuff,0x80);
}
/*******************************************************************************
** 函数名称: main
** 功能描述: 主函数
**
** 输 入: 无
** 输 出: 无
**
** 全局变量:
** 调用模块: 无
**
** 作 者:
** 日 期: 2007年4月19日
**-------------------------------------------------------------------------------
** 修改人:
** 日 期:
**-------------------------------------------------------------------------------
*********************************************************************************/
void main(void)
{
//uint8 i;
TMOD = 0x11;
EA = 1;
ET0 = 1;
ET1 = 1;
IT0 = 1;
TR0 = 1;
LCDInit();
strcpy(DisplayBuff,TestString);
DisplayBuff[32] = ’#’;
DisplayUpdataFlag = 1;
MeaDelayExt = 1;
while(1)
{
TLED = Click_Flag;
if(DisplayUpdataFlag)
{
DisplayUpdataFlag = 0;
UpdataLCD();
MeasureFlag = 1;
}
if(MeasureFlag && MeaDelayExt)
{
RevTimeH = 0;
RevTimeL = 0;
RevTime = 0;
IE0 = 0;
TF1 = 0;
EX0 = 1;