MySensors Library & Examples
2.2.0-61-g15351cd
Main Page
Modules
Classes
Files
Examples
Related Pages
File List
File Members
drivers
AltSoftSerial
config
known_timers.h
1
2
#if defined(ALTSS_USE_TIMER1)
3
#define CONFIG_TIMER_NOPRESCALE() (TIMSK1 = 0, TCCR1A = 0, TCCR1B = (1<<ICNC1) | (1<<CS10))
4
#define CONFIG_TIMER_PRESCALE_8() (TIMSK1 = 0, TCCR1A = 0, TCCR1B = (1<<ICNC1) | (1<<CS11))
5
#define CONFIG_MATCH_NORMAL() (TCCR1A = TCCR1A & ~((1<<COM1A1) | (1<<COM1A0)))
6
#define CONFIG_MATCH_TOGGLE() (TCCR1A = (TCCR1A & ~(1<<COM1A1)) | (1<<COM1A0))
7
#define CONFIG_MATCH_CLEAR() (TCCR1A = (TCCR1A | (1<<COM1A1)) & ~(1<<COM1A0))
8
#define CONFIG_MATCH_SET() (TCCR1A = TCCR1A | ((1<<COM1A1) | (1<<COM1A0)))
9
#define CONFIG_CAPTURE_FALLING_EDGE() (TCCR1B &= ~(1<<ICES1))
10
#define CONFIG_CAPTURE_RISING_EDGE() (TCCR1B |= (1<<ICES1))
11
#define ENABLE_INT_INPUT_CAPTURE() (TIFR1 = (1<<ICF1), TIMSK1 = (1<<ICIE1))
12
#define ENABLE_INT_COMPARE_A() (TIFR1 = (1<<OCF1A), TIMSK1 |= (1<<OCIE1A))
13
#define ENABLE_INT_COMPARE_B() (TIFR1 = (1<<OCF1B), TIMSK1 |= (1<<OCIE1B))
14
#define DISABLE_INT_INPUT_CAPTURE() (TIMSK1 &= ~(1<<ICIE1))
15
#define DISABLE_INT_COMPARE_A() (TIMSK1 &= ~(1<<OCIE1A))
16
#define DISABLE_INT_COMPARE_B() (TIMSK1 &= ~(1<<OCIE1B))
17
#define GET_TIMER_COUNT() (TCNT1)
18
#define GET_INPUT_CAPTURE() (ICR1)
19
#define GET_COMPARE_A() (OCR1A)
20
#define GET_COMPARE_B() (OCR1B)
21
#define SET_COMPARE_A(val) (OCR1A = (val))
22
#define SET_COMPARE_B(val) (OCR1B = (val))
23
#define CAPTURE_INTERRUPT TIMER1_CAPT_vect
24
#define COMPARE_A_INTERRUPT TIMER1_COMPA_vect
25
#define COMPARE_B_INTERRUPT TIMER1_COMPB_vect
26
27
28
#elif defined(ALTSS_USE_TIMER3)
29
#define CONFIG_TIMER_NOPRESCALE() (TIMSK3 = 0, TCCR3A = 0, TCCR3B = (1<<ICNC3) | (1<<CS30))
30
#define CONFIG_TIMER_PRESCALE_8() (TIMSK3 = 0, TCCR3A = 0, TCCR3B = (1<<ICNC3) | (1<<CS31))
31
#define CONFIG_MATCH_NORMAL() (TCCR3A = TCCR3A & ~((1<<COM3A1) | (1<<COM3A0)))
32
#define CONFIG_MATCH_TOGGLE() (TCCR3A = (TCCR3A & ~(1<<COM3A1)) | (1<<COM3A0))
33
#define CONFIG_MATCH_CLEAR() (TCCR3A = (TCCR3A | (1<<COM3A1)) & ~(1<<COM3A0))
34
#define CONFIG_MATCH_SET() (TCCR3A = TCCR3A | ((1<<COM3A1) | (1<<COM3A0)))
35
#define CONFIG_CAPTURE_FALLING_EDGE() (TCCR3B &= ~(1<<ICES3))
36
#define CONFIG_CAPTURE_RISING_EDGE() (TCCR3B |= (1<<ICES3))
37
#define ENABLE_INT_INPUT_CAPTURE() (TIFR3 = (1<<ICF3), TIMSK3 = (1<<ICIE3))
38
#define ENABLE_INT_COMPARE_A() (TIFR3 = (1<<OCF3A), TIMSK3 |= (1<<OCIE3A))
39
#define ENABLE_INT_COMPARE_B() (TIFR3 = (1<<OCF3B), TIMSK3 |= (1<<OCIE3B))
40
#define DISABLE_INT_INPUT_CAPTURE() (TIMSK3 &= ~(1<<ICIE3))
41
#define DISABLE_INT_COMPARE_A() (TIMSK3 &= ~(1<<OCIE3A))
42
#define DISABLE_INT_COMPARE_B() (TIMSK3 &= ~(1<<OCIE3B))
43
#define GET_TIMER_COUNT() (TCNT3)
44
#define GET_INPUT_CAPTURE() (ICR3)
45
#define GET_COMPARE_A() (OCR3A)
46
#define GET_COMPARE_B() (OCR3B)
47
#define SET_COMPARE_A(val) (OCR3A = (val))
48
#define SET_COMPARE_B(val) (OCR3B = (val))
49
#define CAPTURE_INTERRUPT TIMER3_CAPT_vect
50
#define COMPARE_A_INTERRUPT TIMER3_COMPA_vect
51
#define COMPARE_B_INTERRUPT TIMER3_COMPB_vect
52
53
54
#elif defined(ALTSS_USE_TIMER4)
55
#define CONFIG_TIMER_NOPRESCALE() (TIMSK4 = 0, TCCR4A = 0, TCCR4B = (1<<ICNC4) | (1<<CS40))
56
#define CONFIG_TIMER_PRESCALE_8() (TIMSK4 = 0, TCCR4A = 0, TCCR4B = (1<<ICNC4) | (1<<CS41))
57
#define CONFIG_MATCH_NORMAL() (TCCR4A = TCCR4A & ~((1<<COM4A1) | (1<<COM4A0)))
58
#define CONFIG_MATCH_TOGGLE() (TCCR4A = (TCCR4A & ~(1<<COM4A1)) | (1<<COM4A0))
59
#define CONFIG_MATCH_CLEAR() (TCCR4A = (TCCR4A | (1<<COM4A1)) & ~(1<<COM4A0))
60
#define CONFIG_MATCH_SET() (TCCR4A = TCCR4A | ((1<<COM4A1) | (1<<COM4A0)))
61
#define CONFIG_CAPTURE_FALLING_EDGE() (TCCR4B &= ~(1<<ICES4))
62
#define CONFIG_CAPTURE_RISING_EDGE() (TCCR4B |= (1<<ICES4))
63
#define ENABLE_INT_INPUT_CAPTURE() (TIFR4 = (1<<ICF4), TIMSK4 = (1<<ICIE4))
64
#define ENABLE_INT_COMPARE_A() (TIFR4 = (1<<OCF4A), TIMSK4 |= (1<<OCIE4A))
65
#define ENABLE_INT_COMPARE_B() (TIFR4 = (1<<OCF4B), TIMSK4 |= (1<<OCIE4B))
66
#define DISABLE_INT_INPUT_CAPTURE() (TIMSK4 &= ~(1<<ICIE4))
67
#define DISABLE_INT_COMPARE_A() (TIMSK4 &= ~(1<<OCIE4A))
68
#define DISABLE_INT_COMPARE_B() (TIMSK4 &= ~(1<<OCIE4B))
69
#define GET_TIMER_COUNT() (TCNT4)
70
#define GET_INPUT_CAPTURE() (ICR4)
71
#define GET_COMPARE_A() (OCR4A)
72
#define GET_COMPARE_B() (OCR4B)
73
#define SET_COMPARE_A(val) (OCR4A = (val))
74
#define SET_COMPARE_B(val) (OCR4B = (val))
75
#define CAPTURE_INTERRUPT TIMER4_CAPT_vect
76
#define COMPARE_A_INTERRUPT TIMER4_COMPA_vect
77
#define COMPARE_B_INTERRUPT TIMER4_COMPB_vect
78
79
80
#elif defined(ALTSS_USE_TIMER5)
81
#define CONFIG_TIMER_NOPRESCALE() (TIMSK5 = 0, TCCR5A = 0, TCCR5B = (1<<ICNC5) | (1<<CS50))
82
#define CONFIG_TIMER_PRESCALE_8() (TIMSK5 = 0, TCCR5A = 0, TCCR5B = (1<<ICNC5) | (1<<CS51))
83
#define CONFIG_MATCH_NORMAL() (TCCR5A = TCCR5A & ~((1<<COM5A1) | (1<<COM5A0)))
84
#define CONFIG_MATCH_TOGGLE() (TCCR5A = (TCCR5A & ~(1<<COM5A1)) | (1<<COM5A0))
85
#define CONFIG_MATCH_CLEAR() (TCCR5A = (TCCR5A | (1<<COM5A1)) & ~(1<<COM5A0))
86
#define CONFIG_MATCH_SET() (TCCR5A = TCCR5A | ((1<<COM5A1) | (1<<COM5A0)))
87
#define CONFIG_CAPTURE_FALLING_EDGE() (TCCR5B &= ~(1<<ICES5))
88
#define CONFIG_CAPTURE_RISING_EDGE() (TCCR5B |= (1<<ICES5))
89
#define ENABLE_INT_INPUT_CAPTURE() (TIFR5 = (1<<ICF5), TIMSK5 = (1<<ICIE5))
90
#define ENABLE_INT_COMPARE_A() (TIFR5 = (1<<OCF5A), TIMSK5 |= (1<<OCIE5A))
91
#define ENABLE_INT_COMPARE_B() (TIFR5 = (1<<OCF5B), TIMSK5 |= (1<<OCIE5B))
92
#define DISABLE_INT_INPUT_CAPTURE() (TIMSK5 &= ~(1<<ICIE5))
93
#define DISABLE_INT_COMPARE_A() (TIMSK5 &= ~(1<<OCIE5A))
94
#define DISABLE_INT_COMPARE_B() (TIMSK5 &= ~(1<<OCIE5B))
95
#define GET_TIMER_COUNT() (TCNT5)
96
#define GET_INPUT_CAPTURE() (ICR5)
97
#define GET_COMPARE_A() (OCR5A)
98
#define GET_COMPARE_B() (OCR5B)
99
#define SET_COMPARE_A(val) (OCR5A = (val))
100
#define SET_COMPARE_B(val) (OCR5B = (val))
101
#define CAPTURE_INTERRUPT TIMER5_CAPT_vect
102
#define COMPARE_A_INTERRUPT TIMER5_COMPA_vect
103
#define COMPARE_B_INTERRUPT TIMER5_COMPB_vect
104
105
106
#endif
Copyright (C) 2013-2017 Sensnology AB. Generated by
doxygen
1.8.11