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

📄 int.c

📁 7279是串行的LED键盘控制芯片
💻 C
字号:
//****************************************************************************
// @Module        Interrupt Unit
// @Filename      INT.C
// @Project       int.dav
//----------------------------------------------------------------------------
// @Controller    Infineon XC866-4FR
//
// @Compiler      Keil
//
// @Codegenerator 1.4
//
// @Description:  This file contains functions that use the IR module.
//
//----------------------------------------------------------------------------
// @Date          2003-1-1 0:56:25
//
//****************************************************************************

// USER CODE BEGIN (IR_General,1)

// USER CODE END



//****************************************************************************
// @Project Includes
//****************************************************************************

#include "MAIN.H"

// USER CODE BEGIN (IR_General,2)

// USER CODE END


//****************************************************************************
// @Macros
//****************************************************************************

// USER CODE BEGIN (IR_General,3)

// USER CODE END


//****************************************************************************
// @Defines
//****************************************************************************

// USER CODE BEGIN (IR_General,4)

// USER CODE END


//****************************************************************************
// @Typedefs
//****************************************************************************

// USER CODE BEGIN (IR_General,5)

// USER CODE END


//****************************************************************************
// @Imported Global Variables
//****************************************************************************

// USER CODE BEGIN (IR_General,6)

// USER CODE END


//****************************************************************************
// @Global Variables
//****************************************************************************

// USER CODE BEGIN (IR_General,7)

// USER CODE END


//****************************************************************************
// @External Prototypes
//****************************************************************************

// USER CODE BEGIN (IR_General,8)

// USER CODE END


//****************************************************************************
// @Prototypes Of Local Functions
//****************************************************************************

// USER CODE BEGIN (IR_General,9)

// USER CODE END


//****************************************************************************
// @Function      void INT_vInit(void) 
//
//----------------------------------------------------------------------------
// @Description   This is the initialization function of the IR function 
//                library. It is assumed that the SFRs used by this library 
//                are in their reset state. 
//                
//                The project settings regarding the external interrupts are 
//                taken over into the corresponding special function 
//                registers IENx (interrupt enabling), TCON and EXICONx 
//                (trigger selection)(x=0 or 1). The global enable Bit EA is 
//                not changed. The initialization of the interrupt priorities 
//                is located in function MAIN_vInit.
//
//----------------------------------------------------------------------------
// @Returnvalue   None
//
//----------------------------------------------------------------------------
// @Parameters    None
//
//----------------------------------------------------------------------------
// @Date          2003-1-1
//
//****************************************************************************

// USER CODE BEGIN (IR_Init,1)

// USER CODE END

void INT_vInit(void)
{
  // USER CODE BEGIN (IR_Init,2)

  // USER CODE END

  //   ------ Port initialization for Interrupt module-----

  ///  Pin P0.5 (input)
  ///  - used as External interrupt 0 input  pin  

  //   ---------- Non Maskable Interrupt configuration ----------

  ///   NMIWDT disabled
  ///   NMIPLL disabled
  ///   NMIFLASHTIMER disabled
  ///   NMIOCDS disabled
  ///   NMIVDD disabled
  ///   NMIVDDP disabled
  ///   NMIECC disabled
  NMICON        =  0x00;         //  NMI Control Register 
  ///  ---------- external interrupt 0 ----------
  ///  enabled
  ///  Interrupt on falling edge

  ///  falling edge triggered
  IT0 = 1;

  ///  ---------- external interrupt 1 ----------
  ///  disabled

  ///  ---------- external interrupt 2 ----------
  ///  disabled

  ///  ---------- external interrupt 3 to 6----------
  ///  disabled

  IEN0          =  0x81;         //  interrupt enable  register 0
  IEN1          =  0x00;         //  interrupt enable register 1
  TCON          =  0x01;         //  timer0/1 control register 
  EXICON0       =  0x00;         // external interrupt trigger select 
                                 // register 0
  EXICON1       =  0x00;         // external interrupt trigger select 
                                 // register 1
  // USER CODE BEGIN (IR_Init,3)

  // USER CODE END

} //  End of function INT_vInit


//****************************************************************************
// @Function      void INT_viExt0(void) 
//
//----------------------------------------------------------------------------
// @Description   This is the service routine for the External interrupt 0. 
//                Please note that you have to add application specific code 
//                to this function.
//
//----------------------------------------------------------------------------
// @Returnvalue   None
//
//----------------------------------------------------------------------------
// @Parameters    None
//
//----------------------------------------------------------------------------
// @Date          2003-1-1
//
//****************************************************************************

// USER CODE BEGIN (IR_IsrExt0,1)

// USER CODE END


void INT_viExt0(void) interrupt EXT0INT
{
  SFR_PAGE(_su0, SST2);          // switch to page0
  IRCON0 &= ~(ubyte)0x01; //   clear EXINT0

  // USER CODE BEGIN (IR_IsrExt0,2)
  EX0=0;
  disp(0x87,8);
  Getkey();
  EX0=1;

  // USER CODE END

  SFR_PAGE(_su0, RST2);          // restore the old SCU page
} //  End of function INT_viExt0


// USER CODE BEGIN (IR_General,10)

// USER CODE END

⌨️ 快捷键说明

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