C语言delay的延时函数怎么写

供稿:hz-xin.com     日期:2025-01-21
C语言延时函数

学过汇编你就会知道,每条指令都占一定的时间(或者机器周期)的,如果你让机器什么都不做,即空指令的话,机器就会延时,然后你在计算好每次延时到底有多长,外面套一个循环(或者多重循环),根据你想要的延时时间即可计算出来循环的次数 ,延时函数基本上都是这种原理,它的参数就是用来控制循环次数的。

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--);}

回答这个问题前提需要搞清楚:
1.你的执行文件在那里运行?
2.你要延时是否“死等”,还是可以切换到其他任务?
-----------------------------------------------
如果你只是学习c语言,写个小函数玩玩,可以如下:
void delay(int time)
{
for(;time>0;time--)
{
nop;//可写任何无意义的操作
}
}
死等型的延时,时间根据指令执行速度不同而不同!!!!

Sleep(1000),就是延时1秒,记住Sleep的S要大写,不然报错!

sleep(1000);就是延时1秒

包含头文件
#include <windows.h>

delay函数怎么使用来延长时间?
函数名: delay 功 能: 将程序的执行暂停一段时间(毫秒)用 法: void delay(unsigned milliseconds);程序例:\/* Emits a 440-Hz tone for 500 milliseconds *\/ include<dos.h> int main(void){ sound(440);delay(500);nosound();return 0;} ...

52单片机C语言中Delay是什么意思怎么用
在52单片机的C语言编程中,`Delay`通常指的是一个延时函数,它的作用是让程序暂停执行一段时间。这个函数的实现方式可能因不同的开发环境和需求而有所不同,但基本原理是相同的,即通过某种方式让单片机的CPU等待一段时间。`Delay`函数的实现可以基于多种方法,例如循环等待、定时器中断或者直接操作硬件...

单片机c语言编程怎么去延时?
在单片机的C语言编程中,可以使用循环结构来实现延时操作。具体而言,可以使用一个for循环来实现一段时间的延时。以下是一个简单的延时函数的示例代码:void delay_ms(unsigned int ms){ unsigned int i,j;for(i=0;i<ms;i++)for(j=0;j<1000;j++);} 上述代码定义了一个名为delay_ms的函数,...

单片机延时c语言程序怎么写?
在单片机编程中,实现延时功能可以通过多种方式,其中C语言是一种常用的选择。一种基本的延时函数使用了循环结构,例如以下代码:void delay(){ uint i;for(i=0;i<20000;i++);} 这里,`20000`是一个预定义的值,用于控制延时的长度。要计算这个函数的具体延时时间,可以将其转换为十六进制形式,即...

在单片机里C程序延时for(i=0;i<600;i++)延时和delay(1000)有什么区别...
delay(1000)是调用函数, for(i = 0; i < 600; i++)是一条C语言语句。为了编写方便和代码容易理解,通常把for语句放到delay里面。例如:delay的函数如下:delay(int n){ int i;for (i = 0; i < n; i++);} 那么delay(600)的效果就和你的for(i = 0; i < 600; i++)的效果差...

请求高手告诉我这个延时函数的精确延时时间
如果你输入delay(0)会立刻返回 如果你输入delay(1)会变成死循环!正确写法是:void delay(unsigned int i){ unsigned int j = i; while(j--); } 如果你输入delay(10000),则延时时间是10000 * p,其中p = 1\/11,059,200 秒 那么delay(1万)就相当与延时0.009秒 ...

51单片机C语言程序中延时函数delay的原理是什么?
关于大小的值:如果是在C语言中,该值不仅与水晶振动、单片机本身的速度,但也与C的编译器,所以,虽然这个值可以精确计算,但大多数情况下,程序员是经验值。当然,如果你在汇编中编程,情况就不同了,因为每条指令使用一定数量的机器周期,你当然可以根据所有指令使用的总时间来计算特定延迟的总时间。

单片机c语言中delay()函数的头文件是什么?
delay函数是一个自己定义的延时函数,C语言定义延时函数主要通过无意义指令的执行来达到延时的目,并没有一个软件自带头文件专门有delay这个函数的。单片机c语言中delay()的使用:voidDelay10us(ucharMs){ uchardatai;for(;Ms》0;Ms--)for(i=26;i》0;i--);} i=[(延时值-1.75)*12\/...

C语言的sleep,wait,delay函数有什么区别
){int c;clrscr();printf("\\nHello, world!");sleep(1);clrscr();printf("\\nHi, guys");getchar();return 0;}原型:extern void delay(unsigned int msec);用法:#include <system.h功能:短暂延时说明:延时msec*4毫秒举例:\/\/ delay.c#include <system.hmain(){int c;clrscr();...

基于51单片机的C语言延时函数程序编写
12M晶振延时5s的程序如下:void delayus2x(char n)\/\/延时nx2 us { while(--n);} void delayms(unsigned int t)\/\/延时 t x 1ms { while(t--){ delayus2x(245);delayux2x(245);} } delayms(50000);\/\/调用此句延时5s 至于不能大于255,因为你的数据类型为char型,及8字节,最大值...