原创 CVAVR--定时器0的基本应用--定时

2009-4-1 22:09 3093 7 7 分类: MCU/ 嵌入式

#include<mega8.h>
#define   uchar unsigned char
#define   uint  unsigned int
#define   SEI   SREG|=0x80
#define   LED   PORTC.3
volatile uint  i;


void IO_Init(void)
{
      DDRC.3=1;
      LED="1";
}


void Timer0_Init(void)
{
      TCCR0=0x02;
      TCNT0=56;
      TIMSK|=0x01;
      SEI;
}


interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
       TCNT0=56;             //8M 八分频  每步耗时1us 则定时时间为:(256-56)*1us=200us
       if (i++>=250){i=0; LED=!LED;} // LED灯操作一次的时间:250*200=50ms
}


void main(void)
{
      IO_Init();
      Timer0_Init();
      while(1){;;}
}

文章评论0条评论)

登录后参与讨论
我要评论
0
7
关闭 站长推荐上一条 /2 下一条