单片机中c语言延迟函数 单片机中延时函数的写法

51单片机用c语言怎么写延时函数?

延时时间的计算与单片机的晶振频率有关。若晶振频率为12Mhz,那么单片机每震动一次所需要的时间是1/12M s。那么再来看看单片机执行一次自减所需要的振动次数是96次,假如我们对时间要求不是特别精确的话,可以约等于100来计算。现在通过上面两个数据可以得出:单片机每执行一次自减所需要的时间是1/12M *100(s),即1/120000 s,逆向计算一下,每1ms需要自减多少次?120次对吧。所以一个简单的延时功能就诞生了,我们只需要自减120次,就可以延时1ms,如果我们要延时50ms呢,那就自减50*120=6000次。那么在程序上如何表达呢?我们可以用两套for循环

成都创新互联公司主要从事网站设计、网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务安阳县,10余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792

void delay(int i){

int x,y;

for(x=i;x0;x--){

for(y=120;y0;y--)

}

}

参数 i 代表该函数延时多少ms

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

delay函数是一般自己定义的一个延时函数。

c语言定义延时函数主要通过无意义指令的执行来达到延时的目的。下面给出一个经典的延时函数。

// 定义一个延时xms毫秒的延时函数

void delay(unsigned int xms) // xms代表需要延时的毫秒数

{

unsigned int x,y;

for(x=xms;x0;x--)

for(y=110;y0;y--);

}

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

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;ilen;i++)

{

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

{

delay(100000);

}

delay(100000);

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

}

getch();

}


新闻标题:单片机中c语言延迟函数 单片机中延时函数的写法
链接URL:http://ybzwz.com/article/doeheeo.html