不是标准按键,就是那个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个功能按键,其中有几个已经被设置为重启键,我想给其他的按键,响应我的功能,不知道该怎么做,就是一个简单的自定义中断的实验而已,比如我的应用程序打开,
当按键发生后,我的应用程序给出响应,不必系统响应,该如何来做呢?
高手指教 |