timer.c

来自「avr mega128的源代码串口」· C语言 代码 · 共 26 行

C
26
字号
#include <iom128.h>
#include "global.h"

void timer0_init(void)
{
  TCCR0 = 0x00; //stop
  ASSR  = 0x00; //set async mode
  OCR0  = 0x20;
  TCNT0 = 0x64; //setup,10ms
  TCCR0 = 0x07; //start,1024  

  TIFR |= 0x01; //clear t0 overflow flag
  MCUCR = 0x00;
  TIMSK = 0x01; //timer0 interrupt sources
  SREG |= 0x80; //enable int
}

#pragma vector=TIMER0_OVF_vect
SIGNAL(TIMER0_OVF_vect)
{
  TIFR |= 0x01; //clear t0 overflow flag
  SREG |= 0x80; //enable int
  TCNT0 = 0x64; //reload counter value 
  gc_counter ++;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?