中断处理及编程实验 实验三 中断处理及编程实验实验名称:中断处理及编程实验实验目的:使学生了解中断处理的过程及原理,熟悉中断处理的一般思路.预备知识: 1. ARM中断的概念及中断处理的一般过程 中断响应过程: ➢ 保存CPU当前状态、中断屏蔽位以及各条件标志位。 ➢ 设置当前程序状态寄存器CPSR中相应的值。 ➢ 将寄存器LR_mode设置成返回地址。 ➢ 将PC设置成该中断的中断向量地址,从而跳转到相应的中断处理程序处执行。 中断服务程序的处理过程: ➢ 将r0—r3保存在堆栈中 ➢ 保存中断上下文(包括返回地址) ➢ 执行ISR ➢ 恢复被中断的程序的处理器状态,即将SPSR_mode寄存器内容复制到CPSR中。 ➢ 恢复中断上下文 2. S3C4510B的中断系统 S3C4510B的支持多达21个中断源,中断请求可由内部模块和外部引脚信号产生。S3C 4510B的所有的中断都可以归类为IRQ或FIQ,S3C4510B的中断控制器对每一个中断源 都有一个中断悬挂位。S3C4510B用如下4个寄存器控制中断的产生和对中断进行处理 ,分别是:中断优先级寄存器、中断模式寄存器、中断悬挂寄存器、中断屏蔽寄存器 。因为我们在做实验时用到了INT1,INT2,所以我们还应对I/O口控制寄存器进行设置 ,有关更详细的内容请见《um_s3c4510b_rev1marked.pdf》 3. 与中断相关的FS4510的电路图 [pic] 说明:外部中断键KINTR1,KINTR2,KI……