您的位置 首页 培训

wince下中止程序的完成

下面简要的介绍下如何在驱动中编写中断程序。首先说一下在wince内核中,处理器收到中断后的处理过程:当处理器接收到中断后:(1)跳转到内核异常处

下面扼要的介绍下如安在驱动中编写中止程序。

首先说一下在wince内核中,处理器收到中止后的处理进程:

当处理器接收到中止后:

(1)跳转到内核反常处理器,而且屏蔽掉一切等优先级和低优先级的其他的一切对CPU的中止。

(2)调用OEMInterruptHandler()函数回来中止的体系中止号,而且屏蔽这个中止。

(3)中止处理器从头使能对CPU的一切的中止(除了改设备中止),而且触发相应的IST事情。

(4)IST完结中止处理使命,调用InterruptDone()函数从头使能该设备中止。

怎么去完结一个中止呢,下面就一个简略的GPIO来简述完成进程:

(1)向内核注册ISR,以及SYSINTR(逻辑中止号)。

(2)装备GPIO作为一个中止信号线。

(3)树立物理中止号和逻辑中止号之间的联络。可所以动态的如KernelIoControl().静态的是OALIntrStaticTranslate()。

(4)创立一个事情CreateEvent()。

(5)调用InterruptInitialize()来注册这个事情。(调用这个函数便是将这个事情和逻辑中止号联络起来)

(6)创立中止服务线程 IST。

在中止服务线程(IST)中应该做的是:

(1)调用WaitForSingleObject()来等候上述的事情。

(2)处理和设备相关的内容

(3)调用InterruptDone()函数来从头使能这个设备中止。

大体的中止进程便是这样的,其间有些函数都不必定要在某个当地完成,只要能履行到就可以了。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/peixun/300113.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部