Subversion Repositories Projects

Compare Revisions

Ignore whitespace Rev 728 → Rev 729

/Transportables_Koptertool/tags/V-0.1.1/timer.c
0,0 → 1,41
 
#include <avr/io.h>
#include <avr/interrupt.h>
#include "main.h"
#include "timer.h"
 
volatile uint8_t timer;
volatile uint8_t counter, counter2;
volatile uint8_t key;
volatile uint8_t rs232_timer;
 
 
ISR(SIG_OUTPUT_COMPARE0) // Timer-Interrupt (100 Hz)
{
if (counter > 0)
counter --;
else
{
counter = 10;
key = (~PINA >> 4) & 0x0F;
counter2 ++;
}
if (timer > 0)
timer --;
if (rs232_timer > 0)
rs232_timer --;
}
 
void timer_init (void)
{
TCCR0 = (1<<CS02)|(1<<CS00)|(1<<WGM01); // Prescaler 1024
// OCR0 = 72; // Interrupt 100Hz für 7,372800 MHz-Quarz
 
// OCR0 = (F_CPU / ( 100 * 2 * 1024)) -1 ;
OCR0 = (F_CPU / ( 100L * 1024L)) ;
 
TIMSK |= (1<<OCIE0); // Interrupt freigeben für OCR
}