华大芯片中断事件请求序号
本帖最后由 阳仔很无奈 于 2020-9-8 13:31 编辑C:\Users\XuYan\Desktop
针对定时器A,我想使用他的周期匹配中断,但是他的周期匹配中断的序列号16和17已经被我给了另外两个中断用了,现在我再例程中,将原先的序列号16更换为28,却发现无法正常工作了,这时为什么? 原先的序列号是指什么中断序列号? martinhu 发表于 2020-9-8 17:17
原先的序列号是指什么中断序列号?
原先的序列号指的是例程中的序列号,原例程中使用的是16的序列号,更换成17中断可以正常工作,但是换成28后无法正常工作。 本帖最后由 martinhu 于 2020-9-9 19:04 编辑
阳仔很无奈 发表于 2020-9-8 18:47
原先的序列号指的是例程中的序列号,原例程中使用的是16的序列号,更换成17中断可以正常工作,但是换成28 ...
你这个是M120吧,不是所有M0+的芯片都需要自定义中断向量。
因为28是共享中断向量,所以Irq的设置函数就不是原来的那个了。首先,宏定义里面的中断向量得改:
#define TIMERA_UNIT1_OVF_IRQn (Int028_IRQn)//(Int016_IRQn)//
然后中断函数也不是自定义的函数名字
void TimerAOV_IrqHandler()
{
u8TimeraUnit1Cnt++;
if (u8TimeraUnit1Cnt >= 100u) /* 1s */
{
u8TimeraUnit1Cnt = 0u;
LED_R_TOGGLE();
}
TIMERA_ClearFlag(TIMERA_UNIT1, TIMERA_FLAG_OVF);
}
然后中断设置使能的时候:不能用原来的配置函数。
//INTC_IrqRegistration(&stcIrqRegiConf);
INTC_ShareIrqCmd(stcIrqRegiConf.enIntSrc,Enable);
以下样例需要放在M120的DDL驱动库 DeviceDriverLibrary\hc32m120_ddl\example\timera内
martinhu 发表于 2020-9-9 18:58
你这个是M120吧,不是所有M0+的芯片都需要自定义中断向量。
因为28是共享中断向量,所以Irq的设置函数就不 ...
好的,谢谢
页:
[1]