c语言延时函数delay,怎么算延时??
我吧函数原型给copy过来。voidDelay(unsignedintnDelay){unsignedinti,j,k;for(i=0;i<nDelay;i++)for(...
我吧函数原型给copy过来。
void Delay(unsigned int nDelay)
{
unsigned int i,j,k;
for ( i=0;i<nDelay;i++ )
for ( j=0;j<6144;j++ )
k++;
}
假如 nDelay=1024的话,晶振(时钟频率)为600MHz,希望大家能够讲详细点, 好了我在追分
在DM642中运行 展开
void Delay(unsigned int nDelay)
{
unsigned int i,j,k;
for ( i=0;i<nDelay;i++ )
for ( j=0;j<6144;j++ )
k++;
}
假如 nDelay=1024的话,晶振(时钟频率)为600MHz,希望大家能够讲详细点, 好了我在追分
在DM642中运行 展开
5个回答
展开全部
下面是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 <system.h>
功能:短暂延时
说明:延时msec*4毫秒所以,delay的延迟时间是和你的cpu时钟周期相关的。
原型:
void Delay(unsigned int nDelay)
{
unsigned int i,j,k;
for ( i=0;i<nDelay;i++ )
for ( j=0;j<6144;j++ )
k++;
}
用法:#include <system.h>
功能:短暂延时
说明:延时msec*4毫秒所以,delay的延迟时间是和你的cpu时钟周期相关的。
展开全部
就是用晶振频率算cpu指令周期,再算Delay循环中有几条代码,需要多少个指令周期。除一下可以算个大概。具体你可以结合硬件资料来算。
但是用Delay函数来延迟不止和CPU指令周期有关,还和你是否使用了操作系统用了哪种操作系统有关。总之受影响的因素很多,做不到特别精确的。
但是用Delay函数来延迟不止和CPU指令周期有关,还和你是否使用了操作系统用了哪种操作系统有关。总之受影响的因素很多,做不到特别精确的。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C语言是高级语言,可以运行在不同的硬件系统、及操作系统之下。
它的运行时间,没有固定的公式,只能在系统中运行,测试出结果。
它的运行时间,没有固定的公式,只能在系统中运行,测试出结果。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
两个for循环嵌套 执行k++;
计算机运算需要一定的时间,循环的次数越多消耗的时间越多。
但具体的时间不一定的,每台电脑的性能不一样,运行速度也不同的。
计算机运算需要一定的时间,循环的次数越多消耗的时间越多。
但具体的时间不一定的,每台电脑的性能不一样,运行速度也不同的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
每条指令执行都需一定的时间(具体多少可查芯片手册),假如 nDelay=1024的话,则这段程序要执行到nDelay=0才退出FOR循环,这段用去的时间,就相当于延时了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询