怎么用c语言定义一个1ms的延时程序;只用while、 for 等,不用定时器和中断

怎么用c语言定义一个1ms的延时程序;只用while、 for 等,不用定时器和中断,第1张

你好!

如果你要求是比较准确的延时程序,是一定要用定时器中断的,如果是大约的时间,是要知道你的晶振大小,然后用

while(a)

{

a--;

}

就可以了

如果对你有帮助,望采纳。

这怎么是延时1ms的程序?

k不一样延时也不一样。

而这种靠执行指令延时的程序的延时里昂:

1

可以通过查看她的反汇编代码来分析得到。

2

也可以通过定时计数器的获得。

执行前从0开始计数启动定时器,然后以一定参数k调用delay,在返回后检查定时器的计数值

t。

t

=

tc

+

k

t0,

tc是任何一次调用都具有的调用开销。

t0时k=1时去掉调用开销tc的循环体执行时间。

给两个不同的k得到两个不同的t,就可以确定这两个参数

tc和t0。

从而就可以根据谣言吃的时间和容易的计算出k的值。

#include<dosh>

void

fun()

{

delay(10000);

}

调用系统的延迟函数delay,该函数的延时单位是毫秒,所以括号内写10000毫秒,即延迟10秒

keilc51好像也是用C编程,

一般延迟程序就是增加系统负载比如:

int i,j;

yanchi()

{

for(i=0;i<1000;i++)

for(j=0;j<1000;j++)

;

}

这样就可以达到延迟的目的,具体参数你可以随便设。

延时:

#include<timeh>

void wait ( int seconds )

{

clock_t endwait;

endwait = clock () + seconds CLOCKS_PER_SEC ;

while (clock() < endwait) {}

}

------------

调用:

(void) wait (1); //延时 1 秒

(void) wait (1800); // 延时 1800 秒 就是 30 分钟

先加个 #include<windowsh>

然后延迟一秒就是 Sleep(1000); 就行了

1000代表1000毫秒 也就是一秒

#include<iostreamh>

#include<windowsh>

void main()

{

for(int i=0;i<50;++i)

cout<<"#";

cout<<endl;

Sleep(1000);

for(i=0;i<50;++i)

cout<<"#";

cout<<endl;

}

以上就是关于怎么用c语言定义一个1ms的延时程序;只用while、 for 等,不用定时器和中断全部的内容,包括:怎么用c语言定义一个1ms的延时程序;只用while、 for 等,不用定时器和中断、用C语言编程如何计算延时时间、急需一个延时10秒的C语言程序,求大师帮忙,谢谢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9609428.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存