首先说一下该段代码是摘自友善的wince5.0 BSP.在友善的micro2440开发板上有六个按键,通过驱动程序把他们设置成了TAB键,RIGHT DOWN,LEFT DOWN ,ENTER,RIGHT,LEFT等六个功能键。具体代码如下:
从代码可以看出结构和流程都十分清晰,在此总结一下动态申请中断的大致流程:
1》创建事件 CreateEvent()
2》动态申请逻辑中断号 KernelIoControl()
3》初始化申请到的中断 InterruptInitialize()
4》创建IST线程,在线程中调用WaitForSingleObject()等待事件发生并进行中断处理
5》结束中断 InterruptDone()
有一点需要提醒,凡是程序中开发者主动申请的内存,句柄,事件等一定要记得释放,否则程序可能会得到你意想不到的结果!
本文介绍了一个基于WinCE5.0的按键驱动实现案例,详细展示了如何为友善的micro2440开发板上的六个按键配置功能键,并通过代码实现了按键的中断处理过程。
1070

被折叠的 条评论
为什么被折叠?



