微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > S3C2440外部中断详解

S3C2440外部中断详解

时间:12-02 来源:互联网 点击:

PRIORITY选出一个优先级高的,然后把根据选出的中断把INTPND相应位置1(注意:只能选出一个),进入IRQ,让CPU处理。

6.中断的开启。

a.如果是不带子中断的内部中断,只需设置INTMSK,让它不屏蔽中断就可以了。

b如果是带子中断的内部中断,需设置INTSUBMSK和INTMSK,让它们不屏蔽中断就可以了。

c如果是外部中断,对于EINT8-23需要设置EINTMASK和INTMSK。对于EINT0-EINT3只需设置INTMSK。

7.中断的清除。

a.如果是不带子中断的内部中断,只需清除SRCPND,注意清除需位置1。

b如果是带子中断的内部中断,需清除SRCPND和SUBSRCPND,注意先清除SUBSRCPND,再清除SRCPND。因为,如果你先清除SRCPND的话,然后在清除SUBSRCPND的过程中,SRCPND会以为又有中断发生,又会置1。也就是说一次中断会响应两次。所以必须先掐断源头。

c如果是外部中断,对于EINT8-23需要清除EINTPEND和SRCPND(同样注意顺序)。对于EINT0-EINT3只需清除SRCPND。

本文详细分析了S3C2440的中断寄存器,对arm初学者有一定的帮助。


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top