lz您好,我用了一下其中的pwm波程序,但是中断函数interrupt.c中定义的一个
INTC_SetIntISR()函数,是用来往中断向量地址寄存器中写入中断函数地址的,始终编译不了,具体情况是这样的:
在interrupt.h中有一个外部函数声明:extern void INTC_SetIntISR(unsigned int intNum, void (*isr)(void) __irq);
在interrupt.c中有关于此函数的定义:
void INTC_SetIntISR(unsigned int intNum, void (*isr)(void) __irq)
{
if(intNum > INT_LIMIT)
{
return ;
}
if(intNum < 32)
{
VIC0VECTADDR[intNum] = (unsigned )isr;
}
else
{
VIC1VECTADDR[intNum-32] = (unsigned )isr;
}
}
但是在linux下的编译出现了问题,截图如下:
貌似是函数定义过程中的 void (*isr)(void) __irq 变量 编译器无法识别,这个是个什么变量我也不是很清楚,在源文件中找不到这个变量的定义,只知道它代表的是中断函数地址之类的东西,lz能不能帮我解决一下这个问题呢?感激不尽啊!