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

📄 main.c

📁 EXTInterruptFIQ.rar 44B0快速中断、外部中断程序
💻 C
字号:
#include "ctrl_set.h"
#include "console.h"
#include "utils.h"

#include "DataType.h"
#include "44b0x.h"

/*
KEY0 EINT4
KEY1 EINT5
KEY2 EINT6
KEY3 EINT7
*/

 void   FIQ_Exception(void);

extern void  DelayNS(int  dly);

extern U32 MCLK;


void LEDON(char i)
{

if(i==1)
{ rPDATC&=0xfff1;
rPDATC|=2;

}
if(i==2){
 rPDATC&=0xfff1;
rPDATC|=4;

}
if(i==3){
 rPDATC&=0xfff1;
rPDATC|=8;


}
}

void beep(char i)
{
if(i==0)
rPDATE|=0x20;
if(i==1)
rPDATE&=~0x20;
}




void Test_Eint(void)
{

rSPUCR=4;
//rPCONG=0x0000;
    rPCONG=0xff00;	//EINT7~4
    rPUPG=0x0;		//pull up enable
    rEXTINT=0x0; //low level interrupt 
   rINTCON=0x6;//fiq interrupt
  //   rF_ISPC=0x3ffffff;
   rINTMOD=BIT_EINT4567;
 
    rINTMSK=~(BIT_EINT4567|BIT_GLOBAL);


   
}


        void    FIQ_Exception(void)
{
static int i;   
	 

rF_ISPC=BIT_EINT4567;
rEXTINTPND=0xf;

if(i%2==0)
LEDON(1);
else LEDON(2);
i++;

}




/*********************************************************/
#include "44b0x.h"

int Main()
{
	int i,j, key,temp,temp1,temp2;
	
		
		
//	ChangePllValue(88, 6, 1);	//修改系统主频为6倍频
	ChangePllValue(120, 8, 1);	//修改系统主频为6.4倍频
	PortInit();

    beep(1);

rINTMSK=0xffffffff;	
  initFIQ();//enable fiq
Test_Eint();

 //LEDON(1);
    while(1);
	
}

int	pIrqStart=0;
	int	pIrqFinish=0;
		int pIrqHandler=0;

⌨️ 快捷键说明

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