英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流

 找回密码
 立即注册
搜索
电子烟方案单片机单片机开发深圳单片机开发
单片机方案国产单片机8位单片机电子烟方案开发
查看: 3869|回复: 0

几个简单的延时程序(C语言),希望大家设计时能用到

[复制链接]
发表于 2009-3-13 14:50:36 | 显示全部楼层 |阅读模式
/*******************************************************************************/
//函数名:delay_tmr0()    4MHz
//功能描述:TMR0延时  50ms.最大延时65ms
//调用函数:无
//全局变量:无
//输入:无
//输出:无
//返回:无
//占用资源:TMR0
//设计者:李军建                              日期:2008.1.11
//修改者:                                    日期:
/*******************************************************************************/
void delay_tmr0()
{
OPTION=0X07;
for(;;)
{  
  if(TMR0==0XC3)
  { TMR0=0X00;
   break;
  }
}
}
/*******************************************************************************/
//函数名:delay_tmr1()    4MHz
//功能描述:TMR1延时  200ms.最大延时520ms
//调用函数:无
//全局变量:无
//输入:无
//输出:无
//返回:无
//占用资源:TMR1
//设计者:李军建                日期:2008.06.03               
//修改者:                                    日期:
/*******************************************************************************/
void delay_tmr1()
{
TMR1IE=0;   //关TMR1中断
T1CON=0X34;   //TMR1分频1:1,4分频24H,不同步外部时钟,选择内部时钟,关闭TMR1
TMR1H=0X3C;
TMR1L=0XB0;   //3CB0   就是200MS
TMR1ON=1;
   while(1)
   {  if(TMR1IF==1)
        break;
   }
TMR1IF=0;
TMR1ON=0;
}
/*******************************************************************************/
//函数名:delay_tmr2()    4MHz
//功能描述:TMR2延时  4ms.最大延时4ms
//调用函数:无
//全局变量:无
//输入:无
//输出:无
//返回:无
//占用资源:TMR2
//设计者:李军建                日期:2008.06.03               
//修改者:                                    日期:
/*******************************************************************************/
void delay_tmr2()
{
TMR2IE=0;     //关TMR2中断
T2CON=0X03;     //预分频16
TMR2=0X00;
TMR2ON=1;     //256*16=4096
   while(1)
   {  if(TMR2IF==1)
        break;
   }
TMR2IF=0;
TMR2ON=0;
}
/*******************************************************************************/
//函数名:delay_cpu()    4MHz
//功能描述:cpu软件延时  4ms.
//调用函数:无
//全局变量:无
//输入:无
//输出:无
//返回:无
//占用资源:无
//设计者:李军建                日期:2008.06.03               
//修改者:                                    日期:
/*******************************************************************************/
void delay_cpu()
{
int i,j;
for(i=0;i<200;i++)
{
for(j=0;j<200;j++);
}
}
/*******************************************************************************/
//函数名:delay()    4MHz
//功能描述:延时
//调用函数:delay_tmr2();
//全局变量:无
//输入:无
//输出:无
//返回:无
//占用资源:无
//设计者:李军建                日期:2008.06.03               
//修改者:                                    日期:
/*******************************************************************************/
void delay()
{
int dtm;
for(dtm=20;dtm>0;dtm--)
{
delay_tmr2();
}
}
/*******************************************************************************/
//函数名:delay_on()    4MHz
//功能描述:延时
//调用函数:delay_tmr1();
//全局变量:无
//输入:无
//输出:无
//返回:无
//占用资源:无
//设计者:李军建                日期:2008.06.03               
//修改者:                                    日期:
/*******************************************************************************/
void delay_on()
{
for(daa=mult;daa>0;daa--)
{
  delay_tmr1();
}
}
/*******************************************************************************/
//函数名:delay_oneoff()    4MHz
//功能描述:延时
//调用函数:delay_tmr1();
//全局变量:无
//输入:无
//输出:无
//返回:无
//占用资源:无
//设计者:李军建                日期:2008.06.03               
//修改者:                                    日期:
/*******************************************************************************/
void delay_oneoff()
{
for(daa=rate;daa>0;daa--)
{
  for(daa1=mult;daa1>0;daa1--)
  {
  delay_tmr1();
  }
}
}
/*******************************************************************************/
//函数名:delay_fouroff()    4MHz
//功能描述:延时
//调用函数:delay_tmr1();
//全局变量:无
//输入:无
//输出:无
//返回:无
//占用资源:无
//设计者:李军建                日期:2008.06.03               
//修改者:                                    日期:
/*******************************************************************************/
void delay_fouroff()
{
for(daa=rate-7;daa>0;daa--)
{
  for(daa1=mult;daa1>0;daa1--)
  {
   delay_tmr1();
  }
}
}
/*******************************************************************************/
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|公司首页|Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流 ( 粤ICP备09008620号 )

GMT+8, 2024-3-29 21:12 , Processed in 0.053608 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表