interrupt.c
来自「OKI 675050 hardware accelerator sample p」· C语言 代码 · 共 104 行
C
104 行
/**********************************************************************************/
/* */
/* Copyright (C) 2006 Oki Electric Industry Co., LTD. */
/* */
/* Module Name : Intterrupt Source file */
/* File Name : Intterrupt.c */
/* Revision : 1.00 */
/* Date : 2006/03/17 */
/**********************************************************************************/
#include "interrupt.h"
void exec_Handler(void);
void dma_Handler(void);
extern ULONG exec_finish_flag;
PIRQ_HANDLER IRQ_HANDLER_TABLE[MAXWORD];
/****************************************/
/*
init_Irq(void)
*/
/****************************************/
void init_Irq(void)
{
int i;
*(ULONG*)ILC0 = 0;
*(ULONG*)ILC1 = 0;
*(ULONG*)EXILCA = 0;
*(ULONG*)IRQS = 0;
*(ULONG*)CIL = 0x000000FE;
for(i=0; i < IRQ_SIZE ; i++){
IRQ_HANDLER_TABLE[i] = null_Handler;
}
return;
}
/****************************************/
/*
reg_Irq_Handler(void)
*/
/****************************************/
void reg_Irq_Handler(void)
{
IRQ_HANDLER_TABLE[INT_EXEC] = exec_Handler;
*(ULONG*)ILC1 |= ILC1_ILR13;
return;
}
/****************************************/
/*
irq_Handler(void)
*/
/****************************************/
__irq void irq_Handler(void)
{
ULONG irn = 0;
irn = *(ULONG*)IRN;
if(irn < 32){
IRQ_HANDLER_TABLE[irn]();
}
*(ULONG*)CILCL = 0x00000000;
return;
}
/****************************************/
/*
exec_Handler(void)
*/
/****************************************/
void exec_Handler(void)
{
exec_finish_flag = 1;
*(ULONG *)IRQSTATUS =1;
return;
}
/****************************************/
/*
null_Handler(void)
*/
/****************************************/
void null_Handler(void)
{
return;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?