导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→C51计时器程序[cidco8]

 *第21262篇: C51计时器程序

  
楼 主:cidco8 2004年4月22日13:49
 C51计时器程序
我是新手,哪位老前辈能提供C51写的计时器延时程序吗?谢谢!
  
2楼:sjpu 2004年4月23日11:39
 实例
//T0定时配置,每25mS中断一次
...
TMOD |= 0x60;//T0定时,
TH0 = 0x3C;
TL0 = 0x0B0;//T0定时周期为25ms,24Mhz晶振
ET0 = 1;
EA = 1;
...

//在需要延时处
...
T_count = 80;//80X25ms=2S,根据延时的长短改变T_count的值即可
TR0 = 1;//启动定时器
if(T_count >   0 )
{
  return;// 否则直接返回,等待T_count==0
}
 ...;//后续代码

void timer0(void ) interrupt 1// 定时中断
{
 TH0 = 0x3c;
 TL0 = 0x0a8;
 T_count--;
 if(T_count == 0 )
  {
   TR0 = 0;
  } 
}

  
3楼:sjpu 2004年4月23日13:50
 [quote][b]以下是引用[i]sj
以下是引用sjpu在2004-4-23 11:39:13的发言:
实例//T0定时配置,每25mS中断一次
 ...
 TMOD |= 0x60;//T0定时,
 TH0 = 0x3C;
 TL0 = 0x0B0;//T0定时周期为25ms,24Mhz晶振
 ET0 = 1;
 EA = 1;
 ...

 

 //在需要延时处
 ...
 T_count = 80;//80X25ms=2S,根据延时的长短改变T_count的值即可
 TR0 = 1;//启动定时器
 while(T_count >   0 )
;
  ...;//后续代码

 void timer0(void ) interrupt 1// 定时中断
 {
  TH0 = 0x3c;
  TL0 = 0x0a8;
  T_count--;
  if(T_count == 0 )
   {
    TR0 = 0;
   } 
 }



>>>>>>对该主题发表你的看法

本主题贴数3,分页: [第1页]


[上一篇主题]:请各高手,PC与单片机数据如何加密才好?

[下一篇主题]:寻兼职开发工程师