pentabug/firmware/include/pentabug/timer.h
2013-09-05 21:52:53 +02:00

26 lines
581 B
C

#ifndef TIMER_H
#define TIMER_H
#include <stdint.h>
#include <avr/io.h>
// this library addresses the 16 bit timer
#define PRESCALE_1 (1 << CS10)
#define PRESCALE_8 (1 << CS11)
#define PRESCALE_64 (1 << CS11 | 1 << CS10)
#define PRESCALE_256 (1 << CS12)
#define PRESCALE_1024 (1 << CS12 | 1 << CS10)
typedef void (*timer_fun)(void);
// start a timer and call fun() after prescaler*compare ticks
// use the defines above for prescaler
void start_timer(uint8_t prescaler, uint16_t compare, timer_fun fun);
// stops the timer
void stop_timer(void);
#endif /* TIMER_H */