wuhanwangtao
驱动牛犊
驱动牛犊
  • 注册日期2004-12-16
  • 最后登录2006-06-06
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1651回复:6

还是老问题,如何用软件实现微秒级的时钟中断

楼主#
更多 发布于:2004-12-23 16:31
这个问题老是有人说
就是没人解决:(((((((((
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-12-23 19:43
这个问题老是有人说
就是没人解决:(((((((((

关键是你是否要进行调度,如果需要,微秒级不太现实,如果你使用循环方式,可以很精确,但是CPU使用很大
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
wuhanwangtao
驱动牛犊
驱动牛犊
  • 注册日期2004-12-16
  • 最后登录2006-06-06
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-12-24 09:57
我现在做的是激光打标。。
就是每次加工要延时100us在往控制卡输出数据(因为要协调计算机和控制部分速度),控制卡没中断源
只能用软件实现
现在是把ring3关掉,就是不想应用户层的响应,把键盘中断全关了。。所有东西在内核级做
可是效果不理想:(((((((

我找了个老外写的可以达到1us中断源程序
可是看不懂:((((((((((
net-wolf
驱动牛犊
驱动牛犊
  • 注册日期2003-06-19
  • 最后登录2005-03-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-12-24 17:37
这个是底层的东西了,和CPU结合的非常紧密,你应该看看
CPU的数据手册,了解如何使用定时器,直接用汇编来写。
纯粹的C语言是无法实现1us的定时的。
wollok
驱动小牛
驱动小牛
  • 注册日期2002-11-12
  • 最后登录2012-07-18
  • 粉丝0
  • 关注0
  • 积分571分
  • 威望335点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-12-25 20:42
直接写8253控制器.定时精度可以很高的!1/10M.
wuhanwangtao
驱动牛犊
驱动牛犊
  • 注册日期2004-12-16
  • 最后登录2006-06-06
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-12-27 09:27
有改cmos时钟的
有改8253的

可又没例子呀

这都有人说过

可由人做过没??


8253win98有人做过,也有程序
可不知2000下有人做过没?
boly81
驱动小牛
驱动小牛
  • 注册日期2004-06-25
  • 最后登录2012-06-08
  • 粉丝0
  • 关注0
  • 积分490分
  • 威望73点
  • 贡献值0点
  • 好评度49点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-12-28 13:26
现在一般是8254了
我写过8254上实现精确到1/100ms延时代码,好像是达到了windowsxia利用计时器能达到的精度的极限。
winnt 9x下的主要不同点是,对8254设置的工作方式不一样,有的是方式2速率波(98,xp),有的是方式3方波(dos,2k)。所以还要先判断工作模式
如果还要考虑8253,那还要判断是8253还是8254,很麻烦
可以考虑coms实时钟中断,1024次/s,但我没用过

游客

返回顶部