TI中文支持网
TI专业的中文技术问题搜集分享网站

AM5728: 关于ARM A15内核裸机中断的中断向量表设置问题

Part Number:AM5728

A15基本的IO口配置没问题了,现在准备开始跑中断函数,在pdk_am57xx_1_0_17安装目录下找到了设置中断向量表相关的一些函数,如下:

/* ========================================================================== */

/**
* \brief Registers an interrupt Handler in the interrupt vector table for
* system interrupts.
*
* \param intrNum – Interrupt Number
* \param fptr – Function pointer to the ISR
* \param fun_arg – Argument to the ISR
*
* Note: When the interrupt occurs for the sytem interrupt number indicated,
* the control goes to the ISR given as the parameter.
*
* \return None.
**/
void Intc_IntRegister(uint16_t intrNum, IntrFuncPtr fptr, void *fun_arg);

以上是中断设置函数的申明,和对各参数的解释,其中uint16_t intrNum, IntrFuncPtr fptr这两个函数比较好理解,第一个是中断编号,比如如果是定时器TIMER1_IRQ中断,则查AM5728数据手册可知其对应编号是ID69,第二个参数是对应的TIMER1_IRQ中断函数指针,用于指向中断服务函数,第三个参数就比较费解了,不清楚是什么作用,也不知道应该写入什么参数

void Intc_IntRegister(uint16_t intrNum, IntrFuncPtr fptr, void *fun_arg)
{
/* Assign ISR */
fnRAMVectors[intrNum] = fptr;
argArray[intrNum] = fun_arg;
}

上面是函数原型

现在主要问题就是上面所说的第三个参数的问题,希望TI工程师能帮忙解答,谢谢

Nancy Wang:

从注释来看是给ISR传递的参数,如果没有需要传递的参数可定义为NULL试一下。

赞(0)
未经允许不得转载:TI中文支持网 » AM5728: 关于ARM A15内核裸机中断的中断向量表设置问题
分享到: 更多 (0)