我们在AM4376芯片上用GPIO作为中断输入源,中断为低电平有效。默认GPIO是3.3V上拉的。
在linux系统中GPIO注册挂接中断处理函数后,外部中断源以8us左右的间隔发送持续为2us低电平的中断信号。
在中断处理中添加计数发现计数并没有与外部中断信号的个数一致。中断处理函数里使用另一个GPIO产生脉冲信号指示中断处理函数被触发,结果
用示波器测量也发现另一个GPIO产生的脉冲也没有与外部中断信号一一对应。
现在判断下来是中断可能丢失了,现在想问都有哪些因素会影响中断处理?是否是GPIO使用普通IRQ注册中断来不及响应8us间隔的中断信号?能否用
FIQ来注册?
Jian Zhou:
这个时间间隔确实有点小,如果把时间间隔放大,还会有这种问题么?
He Huan:
回复 Jian Zhou:
间隔改大后30us左右的间隔也会有中断丢失的现象。