百度
360搜索
搜狗搜索

c语言delay函数,c语言 delay函数详细介绍

本文目录一览: C语言中 delay 函数如何运用?

函数名: delay
功 能: 将程序的执行暂停一段时间(毫秒)
用 法: void delay(unsigned milliseconds);
程序例:
/* Emits a 440-Hz tone for 500 milliseconds */
#include

int main(void)

{

sound(440);

delay(500);

nosound();

return 0;

}

建议用sleep()函数。

它应该不是标准库函数,就是让程序停止执行一段时间,这段时间由delay(int )来决定

1、delay函数是一般自己定义的一个延时函数。2、C语言定义延时函数主要通过无意义指令的执行来达到延时的目的。下面给出一个经典的延时函数。

// 定义一个延时xms毫秒的延时函数void delay(unsigned int xms) // xms代表需要延时的毫秒数{ unsigned int x,y; for(x=xms;x>0;x--) for(y=110;y>0;y--);}

单片机c语言中delay()函数的头文件是什么?

delay( )函数并不是标准库函数,是编程人员自定义的一个函数(通常是延时函数),所以其并不包含在其他头文件中。
下面给出51单片机中一个常见的延时函数。
// 延时z毫秒的延时函数void delay(unsigned int z){ unsigned int i,j; for(i=z;i>0;i--) for(j=110;j>0;j--); // 利用无实际意义的for循环来进行延时}
没有一个软件自带头文件是专门有delay这种函数的,delay就是延时,一般都是在自定义的头文件里,或者直接在主函数所在的文件定义
delay 一般是自己写的软件延迟函数!
51单片机是自己写延迟函数
delay函数是一个自己定义的延时函数,C语言定义延时函数主要通过无意义指令的执行来达到延时的目,并没有一个软件自带头文件专门有delay这个函数的。
单片机c语言中delay()的使用:
voidDelay10us(ucharMs)
{
uchardatai;
for(;Ms》0;Ms--)
for(i=26;i》0;i--);
}
i=[(延时值-1.75)*12/Ms-15]/4
扩展资料
把delay(10000)改为100000
voidmain()
{
inti;
charstr[]="whatareyoufuckingdoing?";
intlen=sizeof(str)/sizeof(char);
for(i=0;i
<len;i++)
{

if(str[i]!=''&&str[i]!='\0')

{

delay(100000);

}

delay(100000);

printf("%c",str[i]);

}

getch();

}
</len;i++)

C语言 delay啥意思?

delay(1000 )是早期TC的一个延时函数,可以使得你的代码暂停一定时间(毫秒)。
相同的函数包括在windows中的sleep( 1000 );
对于任何一个延迟函数,都要注意用在什么芯片上的。每种芯片的运算速度是不一样的。最好找到一个相对应于硬件的编译软件来运行你的执行程序。另外:tc并不适合编译应用于单片机的程序。就像mcs-51系列单片机常用keil
c或者维幅。msp430系列常用iar软件一样。
我想,你的delay(1000)要的正确效果,在tc里面是看不出来的,tc只能告诉你,你的程序没有语法错误。
看一个延时程序最简单的就是在合适的编译器里面利用程序中断,只要对应好芯片,时间都比较准确。
或者直接烧进芯片里,实际运行感受一下大概。
delay是延时函数,delay(2000)表示延迟2000ms,即2s。

delay() c语言延迟函数

下面是delay
函数原型:
原型:
void
Delay(unsigned
int
nDelay)
{
unsigned
int
i,j,k;
for
(
i=0;i
<ndelay;i++
)

for

(

j=0;j<6144;j++

)

k++;

}

用法:#include

功能:短暂延时

说明:延时msec*4毫秒所以,delay的延迟时间是和你的cpu时钟周期相关的

</ndelay;i++

51单片机C语言中delay函数是怎么定义和使用的?

这是一个延时函数()里的unsigned int a是一个形参,为int型变量最 大值为32767;{}里的unsigned int i和()里的一样 只是变量的名称不同,为i;while就是循环语句 如果他后面的()里的量不为零就执行他{}里的内容,一旦为零就跳出该语句。for(i=0;i<600;i++);就是把i定为零,如果i在for里小于600就跳到第三步i++(也就是i自增1);然后i=1但他还是小于600,接着就到第三步。。。。599次之后i=600,600就不小于600,这时就跳出for。while后的()如果为零就跳出while
delay函数是一般自己定义的一个延时函数。
C语言定义延时函数主要通过无意义指令的执行来达到延时的目的。下面给出一个经典的延时函数。
// 定义一个延时xms毫秒的延时函数void delay(unsigned int xms) // xms代表需要延时的毫秒数{ unsigned int x,y; for(x=xms;x>0;x--) for(y=110;y>0;y--);}
C的话其实时间没有办法完全定性地计算的
如果非得精确的话只能使用定时器了,或者汇编的也行
不过时间要求精度不是很高的话使用下面的代码就行了
当时使用示波器把时间完全调准的,65536ms范围内还是比较准的,已经可以满足通常的要求了:
#include "reg51.h" //头文件包含
//宏定义
#define uint unsigned int
#define uchar unsigned char
void delay(uint ms) // 毫秒级延时(AT89C52 @ 11.0592MHz)
{
uint ti;
while(ms--)
{
for(ti=0;ti<112;ti++){}//112
}
}
调用方式如下:
delay(400); //开机延时400ms
够详细了吧?!
delay后面的()当中的a,是调用函数时,传递过来的变量,此值越大,延迟的时间就越长。
定义一个延时xms毫秒的延时函数
void delay(unsigned int xms) // xms代表需要延时的毫秒数
{
unsigned int x,y;
for(x=xms;x》0;x--)
for(y=110;y》0;y--);
}
使用:
void Delay10us(uchar Ms)
{
uchar data i;
for(;Ms》0;Ms--)
for(i=26;i》0;i--);
}
i=[(延时值-1.75)*12/Ms-15]/4
扩展资料1、在C51中进行精确的延时子程序设计时,尽量不要或少在延时子程序中定义局部变量,所有的延时子程序中变量通过有参函数传递。
2、在延时子程序设计时,采用do…while,结构做循环体要比for结构做循环体好。
3、在延时子程序设计时,要进行循环体嵌套时,采用先内循环,再减减比先减减,再内循环要好。

c语言 delay()的用法?

void delay(int ms);
ms为延时的毫秒数
如delay(1000);延时1秒

C语言delay函数延时计算

C语言delay函数延时计算源代码如下:
#include "stdlib.h"
void delay()
{
time_t start,end;
start=time(null);
unchar i;
while(z--)
{
for(i=0;i<121;i++);
}
end=time(null);
printf("%f",difftime(end,start));
}
扩展资料
1、对于要求精确延时时间更长,这时就要采用循环嵌套的方法来实现,因此,循环嵌套的方法常用于达到ms级的延时。
对于循环语句同样可以采用for,do?while,while结构来完成,每个循环体内的变量仍然采用无符号字符变量。

c语言 delay函数

  delay函数
  功
能:
将程序的执行暂停一段时间(毫秒)
  (该函数是TC下特有的函数,VC下应使用Sleep()函数)
  用
法:
void
delay(unsigned
milliseconds);
  程序例:
  /*
Emits
a
440-Hz
tone
for
500
milliseconds
*/
  #include

  int

main(void)

  {

  sound(440);

  delay(500);

  nosound();

  return

0;

  }

阅读更多 >>>  java语言程序设计答案,国开Java语言程序设计形考4答案谁有?

帮忙啊 C语言的延时函数 不懂能讲解下么

在死循环里边 p1_1=0; delay(10); p1_1=1; delay(10); 通过p1_1来控制亮和灭; delay是延时,就是让程序“空转”,for循环来实现,你可以试着改上下2个delay的参数改为一大一小(则暗和亮的时间不一样),或者同时放大缩小,就知道怎么回事了。
首先delay函数用
for循环
控制空操作:for(j=0;j<255;j==);再加上外层循环for(k=0;k<=1;k++)来实现延时。其中void
delay(unsignde
shar
i)
i

形参
。而在主函数delay(10) 10为
实参
,遵循值的单向传递性。在调用delay函数时,i为10.。但是你这个延时函数写的有问题,应该做下修改:
void
delay(unsignde
shar
i)
{
unsigned
char
j,k;
for(k=0;k<=i;k++)

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

;
}
首先delay函数用for循环控制空操作:for(j=0;j<255;j==);再加上外层循环for(k=0;k<=1;k++)来实现延时。其中void delay(unsignde shar i) i 为形参。而在主函数delay(10) 10为实参,遵循值的单向传递性。在调用delay函数时,i为10.。但是你这个延时函数写的有问题,应该做下修改: void delay(unsignde shar i) { unsigned char j,k; for(k=0;k<=i;k++) for(j=0;j<255;j++) ; }

c语言delay()函数出错

delay函数

能:
将程序的执行暂停一段时间(毫秒)
(该函数是tc下特有的函数,vc下应使用sleep()函数)

法:
void
delay(unsigned
milliseconds);
程序例:
/*
emits
a
440-hz
tone
for
500
milliseconds
*/
#include
int
main(void)
{
sound(440);
delay(500);
nosound();
return
0;
}

网站数据信息

"c语言delay函数,c语言 delay函数"浏览人数已经达到19次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:c语言delay函数,c语言 delay函数的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!