ARM的向量中断和非向量中断
2016-08-13 来源:eefocus
向量中断就是不同的中断有不同的入口地址,非向量中断就只有一个入口地址,进去了在判断中断标志来识别具体是哪个中断。向量中断实时性好,非向量中断简单。向量者,矢量也,即指方向,门路。
向量中断------由硬件提供中断服务程序入口地址;
非向量中断------由软件件提供中断服务程序入口地址
非向量中断发生后,VIC中的vecaddr中会存放一个默认中断服务程序的地址,这个程序是被所有的非向量中断公用的,他执行的作用就是判断究竟是发生了那个非向量中断,然后再转向真正要被执行的中断服务程序。
向量中断服务程序就没有这么麻烦,VIC的vecaddr中存放的就是真正的中断服务程序的地址,直接取出来跳过去执行就可以了。所以向量中断较快。
其实,所有的非向量中断可以看成是一个向量中断。
而快速中断也可以看作是一个向量中断,只不过不需要从VIC的vecaddr中取地址,而是直接跳到相应地址执行,可以看作是一个指定了向量地址的中断。
进入单片机查看更多内容>>
向量中断------由硬件提供中断服务程序入口地址;
非向量中断------由软件件提供中断服务程序入口地址
非向量中断发生后,VIC中的vecaddr中会存放一个默认中断服务程序的地址,这个程序是被所有的非向量中断公用的,他执行的作用就是判断究竟是发生了那个非向量中断,然后再转向真正要被执行的中断服务程序。
向量中断服务程序就没有这么麻烦,VIC的vecaddr中存放的就是真正的中断服务程序的地址,直接取出来跳过去执行就可以了。所以向量中断较快。
其实,所有的非向量中断可以看成是一个向量中断。
而快速中断也可以看作是一个向量中断,只不过不需要从VIC的vecaddr中取地址,而是直接跳到相应地址执行,可以看作是一个指定了向量地址的中断。
相关文章