1、中断的基本概念:
当cup运行时由于外部某事件发生请求CPU去处理,CPU停止当前正在执行的程序转而去执行外部请求事件,当外部请求事件执行完毕后继续返回之前执行程序的地方继续执行程序。
2、中断的触发:
a.以按键产生外部中断为例,首先对中断源进行配置,如配置中断源为电平的下降沿。为了保证中断能上报道中断控制器需要使能中断标志位。
b.对中断控制器进行配置,为了保证中断能上报ARM核需要使能中断控制器。配置中断优先级。
c.对ARM核进行配置,对cpsr的I位进行配置 ,配置为1时标志不相应中断,配置为0表示相应中断。
3、硬件要做的4件事:备份程序状态寄存器CPSR、修改CPSR、保存返回地址到连接寄存器LR、跳转到异常向量表
4、软件要完成的动作:在中断向量表中跳转到对应的中断服务函数,判断中断源处执行对应的函数。清除中断标志位。恢复CPSR,返回被打断的位置。
5、中断处理函数特点:快进快出。
6、底半部机制:
顶半部:处理比较重要的事情
底半步:处理理不太重要的任务。如何实现:软中断、tasket(不能调用带阻塞的函数)、工作队列(可以有阻塞)