从键盘驱动分析wince中断机制

来源:互联网 发布:php mongodb 关闭连接 编辑:程序博客网 时间:2024/05/29 11:20

首先说一下该段代码是摘自友善的wince5.0 BSP.在友善的micro2440开发板上有六个按键,通过驱动程序把他们设置成了TAB键,RIGHT DOWN,LEFT DOWN ,ENTER,RIGHT,LEFT等六个功能键。具体代码如下:

 

从代码可以看出结构和流程都十分清晰,在此总结一下动态申请中断的大致流程:

1》创建事件 CreateEvent()

2》动态申请逻辑中断号 KernelIoControl()

3》初始化申请到的中断  InterruptInitialize()

4》创建IST线程,在线程中调用WaitForSingleObject()等待事件发生并进行中断处理

5》结束中断 InterruptDone()

有一点需要提醒,凡是程序中开发者主动申请的内存,句柄,事件等一定要记得释放,否则程序可能会得到你意想不到的结果!

原创粉丝点击