我们还是先把所有中断相关寄存器列出来吧。与中断有关的寄存器一共7个,结构都差不多,下面一一讲解:
一、中断寄存器
GPIOIS Register (offset = 404h) [reset = 0h]
此寄存器指示中断检测方式,为0时表示边沿触发,为1时表示电平触发。
GPIOIBE Register (offset = 408h) [reset = 0h]
GPIO Interrupt Both Edges (GPIOIBE) 寄存器置1时可将中断配置为上升沿和下降沿皆可触发。当然,只有当GPIOIS寄存器设置为边沿检测(0)时方有效。
GPIOIEV Register (offset = 40Ch) [reset = 0h]
GPIO Interrupt Event (GPIOIEV) 寄存器配置中断是上升沿或高电平触发(1),还是下降沿触发或低电平触发(0)。当然,何种方式触发由GPIOIS寄存器决定。
GPIOIM Register (offset = 410h) [reset = 0h]
GPIO Interrupt Mask (GPIOIM)寄存器用于屏蔽中断。只有它的值为1时,中断方能被发送至中断控制器。
GPIORIS Register (offset = 414h) [reset = 0h]
GPIO Raw Interrupt Status (GPIORIS)寄存器用于检测相应的GPIO是否产生了中断条件。