你最好确认一下 CPLD有没有给触发电平
例程参考修改一下你的中断初始化试试
#include <csl.h>
#include <csl_irq.h>
#include <csl_pll.h>
#include <csl_chip.h>
#include <stdio.h>
Uint16 old_intm;
interrupt void EVT_INT3(void);
interrupt void EVT_INT4(void);
//---------Function prototypes---------
/* Reference start of interrupt vector table */
/* This symbol is defined in file, vectors_IP.s55 */
extern void VECSTART(void);
/*锁相环的设置*/
PLL_Config myConfig = {
0, //IAI
1, //IOB
24, //PLL
1 //Divide by 2
};
void INTconfig()
{
/* Temporarily disable all maskable interrupts */
IRQ_setVecs((Uint32)(&VECSTART));
/* Temporarily disable all maskable interrupts */
old_intm = IRQ_globalDisable();
/* Clear any pending INT3&INT4 interrupts */
IRQ_clear(IRQ_EVT_INT3);
IRQ_clear(IRQ_EVT_INT4);
/* Place interrupt service routine address at */
/* associated vector location */
IRQ_plug(IRQ_EVT_INT3,&EVT_INT3);
IRQ_plug(IRQ_EVT_INT4,&EVT_INT4);
/* Enable INT3&INT4 interrupt */
IRQ_enable(IRQ_EVT_INT3);
IRQ_enable(IRQ_EVT_INT4);
/* Enable all maskable interrupts */
IRQ_globalEnable();
}
void main(void)
{
/*初始化CSL库*/
CSL_init();
/*设置系统的运行速度为144MHz*/
PLL_config(&myConfig);
//设置并使能5509A芯片外部中断3和中断4
INTconfig();
while(1);
}
//External INT3(EXINT)中断处理函数
interrupt void EVT_INT3()
{
printf("EXINT3 Ouccers!\n");
}
//External INT4(EXINT)中断处理函数
interrupt void EVT_INT4()
{
printf("EXINT4 Ouccers!\n");
}
|