打印

在应用程序里添加按键功能2410 wince

[复制链接]
2448|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wbread|  楼主 | 2007-3-5 09:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


不是标准按键,就是那个2410开发板上的简单的4个按键。
pb的代码我基本上 按键这部分功能看懂了
但是问题是,我不想把这么一个简单的功能实现在驱动层面
恩 你的这个工作模式还是中断模式吗?
如果是中断怎么还需要定时器,扫描啊?
应该是中断处理程序ISR不停的处理,IST处理中断请求啊?
我的思路很简单:
就是我的应用程序里,进行了一个keyboard的初始化,然后完成对应中断的初始化InterruptInitialize
然后开启中断处理线程,就这么简单,和驱动里面采用的是同样的模式
可是现在就是InterruptInitialize处理不了,异常退出,而SYSINTR_BUTTON
肯定是已经在pb中定义号的中断,所以我就不知道是哪里的问题,是不是不能写在应用程序里?
今天看这个操作,看的我都晕了,InterruptInitialize函数,

我现在有些不懂了,这个是驱动层面的东西,应该。

而本身windows对驱动层面,应用层面分得比较清楚,

我不知道是不是wince也是这样,

我把这段代码

HANDLE   hEvent1;


hGlobalWriteEvent = CreateEvent(NULL,FALSE,FALSE,NULL);   
if (hGlobalWriteEvent == NULL) 
  {
      DEBUGMSG(1, (TEXT("DEMO: Event creation failed!!!/r/n")));
      return;
  }
// OEMInterruptEnable(SYSINTR_BUTTON,NULL,NULL);
if (!InterruptInitialize(SYSINTR_BUTTON,hGlobalWriteEvent,NULL,0)) 
  {
      DEBUGMSG (1, (TEXT("DEMO: InterruptInitialize failed!!!/r/n")));
      return;
  }

hEvent1 = CreateThread(NULL,0,IST,hGlobalWriteEvent,0,NULL);//开一个处理线程 
if(hEvent1==NULL)
  {
      DEBUGMSG (1, (TEXT("DEMO: CreateThread failed!!!/r/n")));
      return;
  }
DEBUGMSG (1, (TEXT("DEMO: Finish the initialize/r/n")));
return; 

放在应用程序里面可以吗?

可是就是不行,不知道是什么原因?中断id号肯定是存在的,应该没有错吧》?

是不是必须把代码写到驱动层面才可以呢?

另外,我这部分想实现的功能比较简单

我使用的是2410的开发板,上面提供了4个功能按键,其中有几个已经被设置为重启键,我想给其他的按键,响应我的功能,不知道该怎么做,就是一个简单的自定义中断的实验而已,比如我的应用程序打开,

当按键发生后,我的应用程序给出响应,不必系统响应,该如何来做呢?

高手指教

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

0

粉丝