armvic.h

来自「FAT16 Filesystem on Philips LPC2000 seri」· C头文件 代码 · 共 34 行

H
34
字号
/******************************************************************************
 *
 * $RCSfile: armVIC.h,v $
 * $Revision: 1.1 $
 *
 * This module provides the interface definitions for setting up and
 * controlling the various interrupt modes present on the ARM processor.
 * Copyright 2004, R O SoftWare
 * No guarantees, warrantees, or promises, implied or otherwise.
 * May be used for hobby or commercial purposes provided copyright
 * notice remains intact.
 *
 *****************************************************************************/
#ifndef INC_ARM_VIC_H
#define INC_ARM_VIC_H

#define ISR_ENTRY() asm volatile(" sub   lr, lr,#4\n" \
                                 " stmfd sp!,{r0-r12,lr}\n" \
                                 " mrs   r1, spsr\n" \
                                 " stmfd sp!,{r1}")

#define ISR_EXIT()  asm volatile(" ldmfd sp!,{r1}\n" \
                                 " msr   spsr_c,r1\n" \
                                 " ldmfd sp!,{r0-r12,pc}^")

unsigned disableIRQ(void);
unsigned enableIRQ(void);
unsigned restoreIRQ(unsigned oldCPSR);
unsigned disableFIQ(void);
unsigned enableFIQ(void);
unsigned restoreFIQ(unsigned oldCPSR);

#endif

⌨️ 快捷键说明

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