首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
Windows9x/NT及2000下中断驱动程序的统一化处理
来源:本站整理  作者:佚名  2009-05-13 11:47:34



  Listen_Interupt.c源程序

  //应包含的头文件

  #include ″../../include/windrvr.h″

  #include ″../../include/windrvr_int_thread.h″

  #include

  //设置自己的中断号,这个例子为中断12

  enum {MY_IRQ=12};

  //建立全局的WinDriver句柄

  HANDLE hWD;

  //建立中断结构

  WD_INTERRUPT Intrp;

  Static char line[256];

  //中断处理过程,你可以用pData来传递从InterruptThreadEnable()得来的信息

    VOID interrupt_handler(PVOID pData)

  {

       //在这里加入你要做的中断处理代码

       printf(″截获中断的数目为%dn″,Intrp.dwCounter);

  }

  //主函数

  int main()

  {

       WD_CARD_REGISTER cardReg;//建立插卡登记项目的一个实例

       WD_VERSION verBuf;

       hWD=WD_Open();//获得驱动程序的句柄

  if(hWD==INVALID_HANDLE_VALUE)

  {

       printf(″打开WINDRVR出现错误!n″);

       return0;

  }

  BZERO(verBuf);

  WD_Version(hWD,&verBuf);

  if(verBuf.dwVer

  {

       printf(″WINDRVR版本不正确,这里需要的版本为:%dn″,WD_VER);

       return0;

  }

  //初始化cardReg,这是程序的重要部分

  BZERO(cardReg);

  cardReg.Card.dwItems=1;

  cardReg.Card.Item[0].item=ITEM_INTERRUPT;

  cardReg.Card.Item[0].fNotSharable=True;

  cardReg.Card.Item[0].I.Int.dwInterrupt=MY_IRQ;

  cardReg.Card.Item[0].I.Int.dwOptions=1;

  cardReg.fCheckLockOnly=True;

上一页  [1] [2] [3] [4]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:215,074.20000 毫秒