VC里头有没有delay()延时的函数阿?
比如delay(1000)就是延世1秒?
比如delay(1000)就是延世1秒?
解决方案 »
- 如何设置CCombobox的值
- 关于多文档编程中异常错误的问题!
- 要产生一个对话框和视图
- 请教OpenGL选取问题
- 为什么我的仿FileMon程序不能像FileMon一样拦截文件创建\写入\删除等信息啊
- 在一个新的对话框里要使用视图中的数据应该怎么做?
- 指针的问题还没有 解决,高手们帮帮忙啊,急用啊!!!!!!!!1
- 用socket发送接收数据问题?
- 安装程序1000分
- 求助,双缓冲机制Bitblt之后显示结果为上下反向
- 直接由工具箱中拖入的WEB控件和由客户端控件转换的WEB控件有什么区别?
- 大家看看这段代码,捆饶我几天啦,为什么客户机connect()后就返回0,而执行不到服务器AcceptConnect()里设的断点
2.工控领域如果你要求ms等级的精确延时,不要使用windows,要改用实时操作系统。
2000下有10MS的精度
采用循环延时会使你的CPU利用率很高,而且循环延时也是不精确的
WINDOWS是抢占式多任务
你需要的精度是多少?如果是毫秒级的可以采用多媒体定时器
谁有这方面的经验?
提高了线程的优先级也不能保证系统不进行时间片的切换,并且有一个高优先级的线程在作循环,你的系统什么都别干了。
问题是这样的:给一个RC(电阻与电容)回路中的电容充电,R=200欧姆,C=0.47微法,那么充满电容所需时间为t=R*C=200*0.47微秒=94微秒。
比如说,空循环一次耗时10ns,那么我大概使它空循环9400次便可冲满电容。
所以,我需要知道空循环的大概耗时。
-------------------------------------------------------------
Dai_Weis() 请问外加什么电路,外加计时器如何实现?
1。1次循环的时间在每台电脑上都不一样,你写出来的程序绝对不通用。
2。在你的循环期间,很可能有其他任务抢占了cpu的使用,造成你的循环时间不精确,我感觉在windows下,小于50ms的响应都不一定能保证。
3。你的循环期间,程序会没有响应,除非你另外开个工作线程。我觉得你是否可以用硬件实现你的功能。当充电完成后,发一个信号给电脑,让程序响应就可以了,而不要让计算机来控制时间。
但是在高的精度,除非象楼上几位说的,用硬件了。我也对此有需求
希望高手指点硬件8253如何控制?
BinLee(风之子) 你的循环实现肯定不行的,CPU利用率高倒是其次的,如果只跑你一个程序,高就高了。
不同机器的速度不一致也是其次的,你可以首先给他循环上几百万次,计算花费了大概多少MS,你就可以知道延时1MS需要多少次循环。
但是,你别忘了,WINDOWS是个抢占式多任务操作系统。你不能确保在你的循环过程中,他是否强制切换到别的线程了。你永远不能保证我这次循环100万次花了10MS,也许下次我就要花1000MS,甚至是1MS呵呵(不知道是不是有这么快)
[email protected]