📄 isr.c
字号:
//========================================================================================
//文件名称:ISR.c
//描述:建立中断服务程序
//========================================================================================
#define P_IOB_Data (volatile unsigned int *)0x7005
#define P_INT_Clear (volatile unsigned int *)0x7011
#define P_INT_Ctrl (volatile unsigned int *)0x7010
#define P_IOB_Buffer (volatile unsigned int *)0x7006
#define ClearWDog (*((volatile unsigned char *) 0x7012))=1
#define P_INT_Ctrl (volatile unsigned int *)0x7010
#define P_IOA_Data (volatile unsigned int *)0x7000
__asm(".external F_FIQ_Service_SACM_S480");
__asm(".external F_FIQ_Service_SACM_A2000");
#include "s480.h"
#include "A2000.h"
extern uiFlag[16],uiSum,uiClock,uiWR;
#include "hardware.h"
int iTest,i;
extern PlayFlag,uiSumFlag;
void BREAK(void) __attribute__ ((ISR));
void BREAK(void)
{
}
void FIQ(void) __attribute__ ((ISR));
void FIQ(void)
{
if(*P_INT_Ctrl==0x2000)
{
switch(PlayFlag)
{
case 0:
__asm("call F_FIQ_Service_SACM_S480");
break;
case 1:
__asm("call F_FIQ_Service_SACM_A2000");
break;
default:
break;
}
}
*P_INT_Clear=0x2000;
}
void IRQ0(void) __attribute__ ((ISR));
void IRQ0(void)
{
}
void IRQ1(void) __attribute__ ((ISR));
void IRQ1(void)
{
}
void IRQ2(void) __attribute__ ((ISR));
void IRQ2(void)
{
}
void IRQ3(void) __attribute__ ((ISR));
void IRQ3(void)
{
// finddata();
*P_INT_Clear=0x0100;
}
void IRQ4(void) __attribute__ ((ISR));
void IRQ4(void)
{
if(*P_INT_Ctrl&0x0040) //写入2Hz时钟发生
{
if(uiWR==1)
{
uiClock=*P_IOB_Data&0x0100;
if(uiClock==0x0000)
{
uiClock=*P_IOB_Buffer;
uiClock=uiClock|0x0100;
*P_IOB_Data=uiClock;
uiClock=1;}
if(uiClock==0x0100)
{
uiClock=*P_IOB_Buffer;
uiClock=uiClock&0xfeff;
*P_IOB_Data=uiClock;
uiClock=0;
}
}
*P_INT_Clear=0x0040;
}
if(*P_INT_Ctrl&0x0020)
{
finddata(); //取数
*P_INT_Clear=0x0020;
}
}
void IRQ5(void) __attribute__ ((ISR));
void IRQ5(void)
{
*P_INT_Clear=0x0004;
}
void IRQ6(void) __attribute__ ((ISR));
void IRQ6(void)
{
}
void IRQ7(void) __attribute__ ((ISR));
void IRQ7(void)
{
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -