博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
中断触发流程三(中断控制器)
阅读量:4104 次
发布时间:2019-05-25

本文共 468 字,大约阅读时间需要 1 分钟。

这一篇主要说说中断控制器,及GPIO中断触发与中断号的识别,为什么GPIO引脚的触发最后调用特定的中断例程,这中间是怎么联系起来的。现在知道的是request_irq只是在特定的中断号

链表中注册了一个中断例程,那这个中断号哪儿来的呢?其次,GPIO引脚的专用功能是特定的,当被触发后,就会通过VIC通知CPU去读取对应的中断号信息,所以要想让GPIO引脚上的触发

让cpu去调用特定的中断子程序,必须把中断服务子程序放在特定的中断号下面。

VIC接收来自中断源的中断信号,并判别出所有中断信号中的优先级,按优先级次序发送给CPU。CPU通过访问VIC的中断向量寄存器可以快速跳转到中断服务程序。

简单说下中断号的产生流程:

可以看出是中断控制器就算出的中断号,最后通过这个中断号找到中断例程,所以呢,想在一个中断触发的时候执行什么,就把中断例程写到相应的中断号下面去。

VIC计算出了中断号,也可以计算出这个中断的偏移地址,加上IRQ的基址,就可以跳转到中断服务程序,如果这个中断不是共享型的,就可以直接执行中断服务例程了。很方便啊!

转载地址:http://vkbsi.baihongyu.com/

你可能感兴趣的文章
php实现socket(转)
查看>>
PHP底层的运行机制与原理
查看>>
深入了解php底层机制
查看>>
PHP中的stdClass 【转】
查看>>
XHProf-php轻量级的性能分析工具
查看>>
PHP7新特性 What will be in PHP 7/PHPNG
查看>>
比较strtr, str_replace和preg_replace三个函数的效率
查看>>
ubuntu 下编译PHP5.5.7问题:configure: error: freetype.h not found.
查看>>
PHP编译configure时常见错误 debian centos
查看>>
configure: error: Please reinstall the BZip2 distribution
查看>>
OpenCV gpu模块样例注释:video_reader.cpp
查看>>
【增强学习在无人驾驶中的应用】
查看>>
OpenCV meanshift目标跟踪总结
查看>>
人工神经网络——神经元模型介绍
查看>>
Windows 窗口底层原理
查看>>
一种函数指针的运用
查看>>
今天,Python信息量很大!
查看>>
Flash 已死,Deno 当立?
查看>>
编程差的程序员,90%都是吃了数学的亏!骨灰级开发:方法不对,努力也白费...
查看>>
都无代码了,还要程序员吗?
查看>>