|
引用 6 楼 zaodt 的回复:
问题的关键在 IST 中!
中断来了后,IST 被激活,开始读取数据,这个过程是对的;
但如果你读取数据的过程使用了整个【线程时间片】,这样就会卡!
现在不知道你在 IST 中做什么,所以没法回答;
但,如果你能在 IST 中快速读取数据,就可以解决问题。
///////
你可以说说你在 IST 中做了些什么,怎么做的。
我现在为了测试方便,底层中断就循环的送1~1000这些数,应用软件中线程函数
DataReadThread(LPVOID LParam)
{
while (true)
{
if(WaitForSingleObject()==WAIT_OBJECT_0)
{
if(ReadFile(HAND1,Receivebuff,40,&real,null)==true)
{
//读取Receivebuff数据;
//结束程序时把读取数据打印出来;
//发现打印出来的数据不连续,正常应该1~1000循环的,
//触摸屏有点击时就出错或断了
}
}
}
}
大概是这样代码,因为直接网页上输入指令,不是拷贝代码,可以有写错的地方,大大们多包涵。
前些天出差,没法上网,谢谢各位提供帮助和建议,谢谢大家了!!! |
|