EDN首页   博客首页

日志档案

发表于 2007-9-11 9:22:09

2

标签: 无标签

几个C语言延时程序

/*------------------------------------------------------------------
函数全称:50us 延时
注意事项:基于1MIPS,AT89系列对应12M晶振,W77、W78系列对应3M晶振
例子提示:调用delay_50us(20),得到1ms延时
输 入:
返 回:无
------------------------------------------------------------------*/
void delay_50us(uint t)
{
uchar j;
for(;t>0;t--)
for(j=19;j>0;j--)

}

/*******************************************************************
delay_50us(1):延时63us 63-50=13
delay_50us(10):延时513us 513-500=13
delay_50us(100):延时5013us 5013-5000=13
delay_50us(1000):延时50022us 50022-50000=22

延时50ms,误差仅仅22us.
*******************************************************************/

 

/*------------------------------------------------------------------
函数全称:50ms 延时
注意事项:基于1MIPS,AT89系列对应12M晶振,W77、W78系列对应3M晶振
例子提示:调用delay_50ms(20),得到1s延时
全局变量:无
返回: 无
------------------------------------------------------------------*/
void delay_50ms(uint t)
{
uint j;
for(;t>0;t--)
for(j=6245;j>0;j--)

}

/******************************************************************
delay_50ms(1):延时50 010 10us
delay_50ms(10):延时499 983 17us
delay_50ms(100):延时4 999 713 287us
delay_50ms(1000):延时4 997 022 2.978ms

延时50s,误差仅仅2.978ms.
******************************************************************/

系统分类: 单片机   |   用户分类: 单片机程序   |   来源: 整理   |   【推荐给朋友】   |   【添加到收藏夹】

    阅读(1237)    回复(0)  

投一票您将和博主都有获奖机会!