| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 781 人关注过本帖
标题:windows下精确定时1ms程序,高手帮看一下问题所在
只看楼主 加入收藏
yiulun
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2005-10-17
收藏
 问题点数:0 回复次数:0 
windows下精确定时1ms程序,高手帮看一下问题所在

在turboc2.0中编写了精确定时1ms的程序,但是总是不正确。请高手指点一下 #include <stdio.h> #include <dos.h> #include <conio.h>

int count=0; void interrupt far New_Timer(); void interrupt(*Old_Timer)();

void init_timer(void) { Old_Timer=getvect(0x08);/*保存原中断号*/ disable(); setvect(0x08,New_Timer);/*设置新的中断向量*/ outportb(0x43,0x36);/*设定8253工作方式*/ outportb(0x40,0xa9);/*设置低8位*/ outportb(0x40,0x04);/*设置高8位*/ enable(); }

void interrupt New_Timer(void) { count++; }

void Delay_Timer(int counter) { count=0; while(count>counter) { count=0; return; } }

void restore_timer(void) { disable(); outportb(0x43,0x36);/*设定8253工作方式*/ outportb(0x40,0xff);/*设置低8位*/ outportb(0x40,0xff);/*设置高8位*/ setvect(0x08,Old_Timer);/*恢复原来的中断向量*/ enable(); }

int main(void) { int i; for(i=0;i<10;i++) { init_timer(); Delay_Timer(1000);//延时1s printf("ok"); } restore_timer(); return; }

搜索更多相关主题的帖子: windows 
2005-10-17 15:15
快速回复:windows下精确定时1ms程序,高手帮看一下问题所在
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027696 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved