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

📄 inter.c

📁 TDA7540 收音机程序
💻 C
字号:
/***************************************************************************
Project  :   TDA7540 Jig board 
Compiler : ST7 HiCross C (HiWARE)
Module   :  Inter.c
Version  :  V 1.0
Created  : Jan.24th,2005    
Author   :  Jerry HE / ST-ShenZhen
Description
         -    Interrupt routine
Modified
	  - 
***************************************************************************/
#include "system.h"

static unsigned char TmpOcl;
static unsigned char TmpOch;
static unsigned char Tim1Cntr; 

unsigned char T10ms;
unsigned char T100ms;

/*--------------------------------------------------------------------------
Routine : INT_Timer1
Input   : 
Output  :
Description 
        - General timer service
--------------------------------------------------------------------------*/ 
#pragma TRAP_PROC SAVE_REGS
void INT_Timer1 (void)
{
/*-----------Output Compare 1-----------*/
  if (BitVal(TIM1_OCF1))
  {  
     /* every 2ms normal  */
    // if (ValBit(PwrFlag,WakeUp))        /* NO NOT USE GetPwrFlg !!! */
    //{ 
     asm
        {
	    ld      a,TIM1_OC1L;         // 1 CLK = (1 / 8.664) * 2 * 8 
           add     a,#0x3B             //       = 2000 / 1000 usec    
           ld      TmpOcl,a             // 2 msec /1.xus= 1083 CLKs     
           ld      a,TIM1_OC1H          //         = 1083 (0x03E8 hex) 
           adc     a,#0x04              // OC = 0x043B
           ld      TIM1_OC1H,a
           ld      a,TmpOcl
           ld      TIM1_OC1L,a   
        }    
	
	if(ADKeyDelay!=0) ADKeyDelay--;
	
	if(T10ms<5)  T10ms++;
	else
	{
	   T10ms =0;
	   KeyTimer();
	   Radio_10msTimer();
	   Audio_10msTimer();
	   if(PowerOnDelay!=0)   PowerOnDelay--;
	   if(T100ms<10) T100ms++;
	   else
	   {
	   	T100ms = 0;
		Audio_100msTimer();
		if(ManualSeekTime!=0) ManualSeekTime--;
	   }
	}
	if (BitVal(TIM1_OCF2))
    {                                                   /* every 500/600 usec */
      asm  ld   a,TIM1_OC2L;     /* just clear the flag, ld means clear*/
    }
  }
}

/*-----------------------------------------------------------------------------
ROUTINE NAME : dummy_rt
INPUT/OUTPUT : None

DESCRIPTION  : Empty Interrupt Service Routine

COMMENTS     : all the non-connected interrupt vectors are connected to this empty function
-----------------------------------------------------------------------------*/ 

#pragma TRAP_PROC SAVE_REGS
void dummy_rt(void)
{
}
/*** (c) 2005  STMicroelectronics ****************** END OF FILE ***/

⌨️ 快捷键说明

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