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

📄 interrupt_vector.c

📁 基于ST72324设计的汽车防盗器源程序
💻 C
字号:
/*	BASIC INTERRUPT VECTORS TABLE FOR ST7 devices
 *	Copyright (c) 2002-2005 STMicroelectronics
 */
#define __DEFINE_REGISTERS_STVD7_INCLUDE__
#include "ST72324BLK2.h"
#undef  __DEFINE_REGISTERS_STVD7_INCLUDE__
extern void _stext();		/* startup routine */ 
extern void Receive(void);
extern unsigned char StandarClock2;
extern unsigned char FlagRX;
extern unsigned char TAOC2LBuff;
extern unsigned char CodeLength;
unsigned char TempBuff0;
extern BIT_CHAR Flag4;
extern BIT_CHAR Flag3;
#define Direct b0
#define FlagLearn b4
@interrupt void Timer4ms (void)
{
  MCCSR&=~BIT0;
	StandarClock2++;
	if(Flag4.b.Direct)
	{
	  if((TAOC1LR+=2)>=116) Flag4.b.Direct=0 ; 
	  TAOC2LR=(TAOC2LBuff+=4);
  }
	else
  {
		if((TAOC1LR-=2)<=42) Flag4.b.Direct=1;   
		TAOC2LR=(TAOC2LBuff-=4);

  }
}
/*##################################################################*/
@interrupt void ReceiverInt (void)
{
	unsigned char Temp;
	TempBuff0=(TBCR>>3);
	if(TBCR>1400){CodeLength=20;FlagRX&=~EncrypCode;goto Next1;}
	if(!(PCDR&BIT2)) goto Next1;
  else if(Flag3.b.FlagLearn && (TempBuff0<25)) {CodeLength=20;FlagRX&=~EncrypCode;goto Next1;}
	else if(TempBuff0<16)  goto Next1;/*if <125us*/ 
  else
	Receive();
Next1:
  Temp=TBCSR;
  TBACLR=0;     //reset TB counter 
	Temp=TBIC1LR;
	Temp=TBIC2LR;
}

/*##################################################################*/

@interrupt void NonHandledInterrupt(void)
{
	return;
}
/*##################################################################*/


/* Interrupt vector table, to be linked at the address
   0xFFE0 (in ROM) */ 
void (* const _vectab[])() = {
	NonHandledInterrupt,  		/* 0xFFE0 */
	NonHandledInterrupt,			/* 0xFFE2 */
	NonHandledInterrupt,			/* 0xFFE4 */
	NonHandledInterrupt,			/* 0xFFE6 */
	ReceiverInt,		        	/* 0xFFE8 */
	NonHandledInterrupt,			/* 0xFFEA */
	NonHandledInterrupt,			/* 0xFFEC */
	NonHandledInterrupt,			/* 0xFFEE */
	NonHandledInterrupt,			/* 0xFFF0 */
	NonHandledInterrupt,			/* 0xFFF2 */
	NonHandledInterrupt,			/* 0xFFF4 */
	NonHandledInterrupt,			/* 0xFFF6 */
	Timer4ms,           			/* 0xFFF8 */
	NonHandledInterrupt,			/* 0xFFFA */
	NonHandledInterrupt,			/* Trap vector */
	_stext,			/* Reset Vector */
};

⌨️ 快捷键说明

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