Files
HendiControlFirmware/Control/firmware/uart_echo/timer.h
T
jens f5fe03340f - added suspend mode command 'X'
- added timerStop()

git-svn-id: http://moon:8086/svn/projects/HendiControl@66 fda53097-d464-4ada-af97-ba876c37ca34
2019-03-04 20:57:34 +00:00

43 lines
974 B
C

/*
* timer.h
*
* Created: 20.02.2019 20:56:07
* Author: jens
*/
#ifndef TIMER_H_
#define TIMER_H_
#include "fifo.h"
typedef enum _eTimerId
{
TIMER_GENERAL = 0,
TIMER_TIMEOUT = 1,
TIMER_ADC = 2
} TimerId;
typedef struct _sTimer_t
{
volatile int isRunning;
volatile uint16_t count;
} Timer_t;
typedef enum _eTimerClockSel
{
TimerClockSel_none = 0,
TimerClockSel_PS_1 = (1<<CS10),
TimerClockSel_PS_8 = (1<<CS11),
TimerClockSel_PS_64 = (1<<CS11) | (1<<CS10),
TimerClockSel_PS_256 = (1<<CS12),
TimerClockSel_PS_1024 = (1<<CS12) | (1<<CS10),
TimerClockSel_ext_T1_neg = (1<<CS12) | (1<<CS11),
TimerClockSel_ext_T1_pos = (1<<CS12) | (1<<CS11) | (1<<CS10),
TimerClockSel_mask = (1<<CS12) | (1<<CS11) | (1<<CS10),
} TimerClockSel;
void timer_init(Fifo *pFifo, uint16_t TIMER_RELOAD, TimerClockSel clockSel);
void timer_start(TimerId timerId, uint16_t count);
void timer_stop(TimerId timerId);
#endif /* TIMER_H_ */