?? irq.h
字號(hào):
/******************************************************************************
* irq.h: Interrupt related Header file for Philips LPC318x Family
* Microprocessors
*
* Copyright(C) 2006, Philips Semiconductor
* All rights reserved.
*
* History
* 2005.10.01 ver 1.00 Prelimnary version, first Release
*
******************************************************************************/
#ifndef __IRQ_H
#define __IRQ_H
typedef void (*HandlerAddr)(void);
#define I_Bit 0x80
#define F_Bit 0x40
#define SYS32Mode 0x1F
#define IRQ32Mode 0x12
#define FIQ32Mode 0x11
#define INT_LOW_LEVEL 0
#define INT_HIGH_LEVEL 1
#define INT_LEVEL_SENSITIVE 0
#define INT_EDGE_SENSITIVE 1
/* unlike Keil Compiler, don't save and restore registers into the stack
in RVD as the compiler does that for you. See RVD ARM compiler Inline and
embedded assemblers, "Rules for using __asm and asm keywords. */
static DWORD sysreg; /* used as LR register */
#define IENABLE __asm { MRS sysreg, SPSR; MSR CPSR_c, #SYS32Mode }
#define IDISABLE __asm { MSR CPSR_c, #(IRQ32Mode|I_Bit); MSR SPSR_cxsf, sysreg }
void init_irq( void );
void Install_MIC( BYTE IntNum, BYTE ActPol, BYTE ActType, HandlerAddr Handler );
void Install_SIC1( BYTE IntNum, BYTE ActPol, BYTE ActType, HandlerAddr Handler );
void Install_SIC2( BYTE IntNum, BYTE ActPol, BYTE ActType, HandlerAddr Handler );
void Enable_MIC( BYTE IntNum );
void Enable_SIC1( BYTE IntNum );
void Enable_SIC2( BYTE IntNum );
void Disable_MIC( BYTE IntNum );
void Disable_SIC1( BYTE IntNum );
void Disable_SIC2( BYTE IntNum );
#endif /* end __IRQ_H */
/******************************************************************************
** End Of File
******************************************************************************/
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -