WINCE 能实现每秒5000次中断吗?有没有高手做过,请赐教。

fangzheng2008 2009-05-02 09:01:36
加精
Wince5.0 硬件每秒钟5000个脉冲触发X86CUP的7号中断,Wince能完全捕获到每一个中断吗,保证不丢,请做过的兄弟姐妹帮帮忙,提提思路,或者给
一段代码,不胜感激
...全文
20794 84 打赏 收藏 转发到动态 举报
写回复
用AI写文章
84 条回复
切换为时间正序
请发表友善的回复…
发表回复
ml_chow 2012-01-14
  • 打赏
  • 举报
回复
我现在做1us的中断,有没有什么想对我说的~~~~~~~
zhouyakun 2011-08-11
  • 打赏
  • 举报
回复
我做过100KPS没问题,计数脉冲到200KPS时漏计数有25%。
tee4509 2010-08-19
  • 打赏
  • 举报
回复
我试过了,isr-ist模式最快大概2k个不丢失,isr模式我还没实现
正在做
http://topic.csdn.net/u/20100819/12/3c804d71-1245-4350-ad7c-b7df0473be80.html?18510
zhangpangp 2010-07-14
  • 打赏
  • 举报
回复
学习了!
tayosoft 2010-01-18
  • 打赏
  • 举报
回复
这是一个简单的问题。WINCE可以轻松实现的,我们4年前就已经实现了。X86平台的赛扬400M下可以实现最快的速度是21000次/秒,一般在15000次每秒的话界面基本不受影响的。
再见传奇 2010-01-10
  • 打赏
  • 举报
回复
受用了,学习了,娱乐了
iwillbeback008 2009-11-18
  • 打赏
  • 举报
回复
学习了
xcydj83 2009-10-31
  • 打赏
  • 举报
回复
学习了
gooogleman 2009-10-23
  • 打赏
  • 举报
回复
[Quote=引用 72 楼 armce 的回复:]
首先需要知道大部分推荐的WinCE中断处理模型都是ISR+IST,如果用这个模型你是基本不要想了
因为IST的运行依赖于系统调度,就是说依赖于系统的时钟,像gooogleman说的,系统时钟是1ms的话,不可能实现5000次/s的处理
但是你要知道这种局限并不是在于CPU无法捕获这么快的中断,而是ISR+IST的模型限制了速度
在中断来临的时候,WinCE会暂时关闭中断(或小于等于当前优先级的中断),一直到可以重新打开,这一段时间如果可以符合5000次/s的情况,那就说明还有希望(在不修改微软既有的代码的前提下)。
所以你可以在ISR中直接处理这个中断然后打开中断,这时候就相当于一个单线程的系统。需要测量的就是
1 从中断到来 到 进入ISR的时间
2 处理这个中断的时间
3 打开中断及返回的时间
如果处理时间很短,比如50us之内,那可能还可以考虑
如果占用时间过长,会导致wince系统一直被锁死来处理中断,那么系统就像死机了一样


[/Quote]

学习!
riyan 2009-07-10
  • 打赏
  • 举报
回复
来学习的
j666p903 2009-07-08
  • 打赏
  • 举报
回复
帮顶 学习了
armce 2009-07-08
  • 打赏
  • 举报
回复
首先需要知道大部分推荐的WinCE中断处理模型都是ISR+IST,如果用这个模型你是基本不要想了
因为IST的运行依赖于系统调度,就是说依赖于系统的时钟,像gooogleman说的,系统时钟是1ms的话,不可能实现5000次/s的处理
但是你要知道这种局限并不是在于CPU无法捕获这么快的中断,而是ISR+IST的模型限制了速度
在中断来临的时候,WinCE会暂时关闭中断(或小于等于当前优先级的中断),一直到可以重新打开,这一段时间如果可以符合5000次/s的情况,那就说明还有希望(在不修改微软既有的代码的前提下)。
所以你可以在ISR中直接处理这个中断然后打开中断,这时候就相当于一个单线程的系统。需要测量的就是
1 从中断到来 到 进入ISR的时间
2 处理这个中断的时间
3 打开中断及返回的时间
如果处理时间很短,比如50us之内,那可能还可以考虑
如果占用时间过长,会导致wince系统一直被锁死来处理中断,那么系统就像死机了一样

VCILOVE 2009-07-08
  • 打赏
  • 举报
回复
只能说我没有做过,5000次,晕
talos_5 2009-07-08
  • 打赏
  • 举报
回复
看来实时一点的还是要单片机来搞啊
fishly_0 2009-06-11
  • 打赏
  • 举报
回复
理论上是可以,但是取决于你的应用程序在处理什么咚咚。我用2440,266M的频率,用Timer模拟了一个波特率为2400的串口,数据很正确,4800的波特率之前似乎也有用过,不记得了,但是现在是用2400的波特率。 在模拟串口数据时,有时候会出现系统时钟中断无法响应的问题哦。
zhj8727 2009-05-31
  • 打赏
  • 举报
回复
guanzhu
freebird001 2009-05-30
  • 打赏
  • 举报
回复
好帖子,帮助顶
sxy_9761 2009-05-30
  • 打赏
  • 举报
回复
个人觉得理论上仅ISR模块来说是可以的,当然应用上取决于硬件环境.
cammy168 2009-05-07
  • 打赏
  • 举报
回复
没试过,顶
余易键1303 2009-05-07
  • 打赏
  • 举报
回复
顶顶顶
加载更多回复(60)

19,502

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧