延时函数delay延时1秒

作者&投稿:裘可 (若有异议请与网页底部的电邮联系)

C语言中 delay 函数如何运用?
1、delay函数是一般自己定义的一个延时函数。2、C语言定义延时函数主要通过无意义指令的执行来达到延时的目的。下面给出一个经典的延时函数。\/\/ 定义一个延时xms毫秒的延时函数void delay(unsigned int xms) \/\/ xms代表需要延时的毫秒数{ unsigned int x,y; for(x=xms;x>0;x--) for(...

C++ 时间延时 函数,时间不准,求解
四舍五入的话3seconds 这样就跟你传入的参数2秒不对了。。关键你是要考虑一些函数的执行时间,同时DispatchMessage是一个同步函数。当前GetMessage得到一个WM_TIMER消息,而窗口处理函数在处理onTimer的时候sleep了5秒,那么这个函数要等5秒才返回。所以你这个delay函数时间肯定是不精确的。

delay函数
更改了j延时的函数时间就变了,所以频率就在不断变化了。void delay(unsigned int i){ unsigned char j;for(i;i>0;i--)for(j=255;j>0;j--)\/\/延时函数本来是i*j循环的时间,j改变了i*j当然也改变了.}

单片机delay函数延迟时间计算,delay(80);为什么是600us左右?
只有汇编语言才能得到精确的时间。C编译成汇编时,不同的编译器,不同的编译策略都会使最终的程序不一样。如果短时间的延时,可以利用_nop_()来控制,如果是长时间的可以用定时器中断来控制。你自己写函数的话,可以在KEIL调试模式下,单步运行,看左侧窗口中的second,那个是程序从复位到当前的运行秒数...

51单片机c语言延时函数 Void delay 1ms(unsigned int ms){un
关于单片机C语言的精确延时,网上很多都是大约给出延时值没有准确那值是多少,也就没有达到精确高的要求,而本函数克服了以上缺点,能够精确计数出要延时值且精确达到1us,本举例所用CPU为STC12C5412系列12倍速的单片机,只要修改一下参数值其它系例单片机也通用,适用范围宽。ms=1时,第一个for循环进入,...

请求高手告诉我这个延时函数的精确延时时间
如果你输入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函数是怎么定义和使用的?
定义一个延时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=[(延时值...

在单片机中delay函数延时时间的计算
这是大概的延时时间,其实大部分的人编制这里不是125是120,。

52单片机C语言中Delay是什么意思?怎么用?
delay是延时的意思,delay(n)是延时n个时间单位,至于一个时间单位是多少,这需要你的delay函数决定的,

DELAY函数中延时基准部分是什么意思?
这跟你的硬件时钟有关,及执行100条dly的时间是1ms,以此作为延时基准,当xms为1时delayxms(1)延时时间为1ms。

藤京18722139223问: delay() 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--); }

藤京18722139223问: 请问在单片机C语言编程中,用delay延迟的话,1秒程序是什么?单片机晶振为12MHZ ... -
丘北县氟康回答: 在Keil里仿真的话,在配置里把晶振调成12MHz,然后在调用delay函数的地方设置一个断点,开始调试程序,运行到断点处,注意程序左边有一个记录当前寄存器和一些状态的窗口,其中,里面有一个是专门记录当前运行了多少时间的变量,记下当前时间T1,然后按F10(不进入子函数)调试,再记录当前时间T2,则延时=T2-T1.多试几个A,差不多调到1s就够了.我一般都这么调.你要想明白其中原理,想自己算的话,你就看看delay的汇编代码段自己算吧.

藤京18722139223问: AT89C51单片机延时1秒程序怎么写??? -
丘北县氟康回答: void DELAY(int z)//延时zms {int x,y;for(x = z;x > 0;x--)for(y = 110;y > 0;y--); }DELAY(1000); 就可以延时1S 但是有很小的误差 精确的只能用定时器了

藤京18722139223问: 在C++中怎么用delay函数用来延迟?
丘北县氟康回答: MS VC++可以用MFC的Sleep函数,参数是毫秒.delay函数要自己写,编译器里没有.#include <time.h> // 头文件 time_t start_time, cur_time; // 变量声明 time(&start_time); do { time(&cur_time); } while((cur_time - start_time) < 3); 上面的 3 是 ...

藤京18722139223问: 在51编程delayms什么意思 -
丘北县氟康回答: delay:是延时的意思,ms:毫秒. delayms:就是指毫秒级的延时程序 以下是本人编写的循环体延时程序.时钟晶振为8MHz.//*************************************** //函数名:Delay_us/ms() //描 述:延时函数. //***********************************...

藤京18722139223问: C51单片机延时问题,使用delay函数这个延时时间是如何计算?
丘北县氟康回答: 1.你可以通过keil仿真,多试几次找出这个值.仿真可以看时间.2.还可以把程序下到板子上,比如运行1分钟.通过多次试验,也能找出这个值.3.也可以理论计算,51有机器周期、指令周期,考虑晶振,看一个for要多少指令,最后也能算出来.不同单片机不一样,有的没有机器周期,有的指令周期也不一样,晶振也不一样.推荐前两种方法.

藤京18722139223问: 51单片机按键延时1秒转换led状态,求大神写下程序 -
丘北县氟康回答: 0 01 11 00 1 是这样的四种状态吗? 这样很简单的,, 主要还是检测按键, 按键按下 你把一个变量+1, 比如 if(Key == 0) { delay(); //延时10ms,延时函数 自己写吧 if(Key == 0) { num++; if(num >= 4) num = 0; while(!Key); } } 然后根据num ...

藤京18722139223问: 请问在VB中怎么延时timedelay -
丘北县氟康回答: 在模块中定义函数 sub delay(delay time as long) for i=1 to delaytime doevents next i end sub 在窗体中写下: delay(1000) 表示延时一秒!

藤京18722139223问: 请求高手告诉我这个延时函数的精确延时时间 -
丘北县氟康回答: 如果你输入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秒

藤京18722139223问: 51单片机,有8个流水灯,每个之间延迟1秒,这个延迟用c程序编写怎么写 -
丘北县氟康回答: 要看你的时钟周期,如果是12Mhz的话,每个时钟周期MC=6*2/12 M =1us,所以延迟是让机器计数1000000下,上面那个公式你自己套用24Mhz的就是2000000下.c语言的循环次数你自己算,每条指令一个周期,所以楼上的程序在12Mhz下是1s延迟.


本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网