首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > WinCE >

【急求】小弟我的SPI转串口的驱动程序会使WINCE系统变慢

2012-04-30 
【急求】我的SPI转串口的驱动程序会使WINCE系统变慢我用GPIO口模拟的SPI来驱动SPI转串口的芯片。我自己写了一

【急求】我的SPI转串口的驱动程序会使WINCE系统变慢
我用GPIO口模拟的SPI来驱动SPI转串口的芯片。我自己写了一个WINCE应用程序来测试我的驱动。
运行应用程序,我通过这个芯片往外发串口信息(用的不是中断方式),系统没有问题,没有感觉变慢。
一旦外面发串口信息给这个芯片,这时去看系统就立即变慢了。(打开关闭文件夹非常的慢)。即便我停止发信息给芯片,以及我把应用程序关掉也没有用。
我的驱动用的是中断接收外面发给芯片的信息。
我的程序的结构是这这样的:
_Init(): //我在_Open里面这样初始化也试过,结果一样。
  KernelIoControl();
  CreateEvent();
  InterruptInitialize()
  CreateThread(..ISR...)

_ISR(): 
  Waitforsingleobject(event, infinite);
  readblock(); // 读取芯片接收到的串口信息
  interruptdone(event);  

就这么简单的一个结构,不知道为什么,我的驱动一旦外面给这个芯片发串口信息,这个wince系统就慢了,而且怎么也恢复不了,只能是关电,再重新上电。
请高手指点。

[解决办法]
添加打印消息,看你的驱动到底在哪里慢下来
[解决办法]
线程处理要注意,
最大可能性是内存泄露,这个我遇到过不少,立即死机都有可能。

热点排行