aboutsummaryrefslogtreecommitdiff
path: root/kernel/kernel.h
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2011-03-12 01:10:40 +0000
committerDimitri Sokolyuk <demon@dim13.org>2011-03-12 01:10:40 +0000
commit8d9da58254aabb37d2c76414ba5a1a6e43518f45 (patch)
tree2c9bb960a34dba0c938d2dee58e0d8cfdfce73fb /kernel/kernel.h
parent1026e533722f68fbcaa0167c4c172540afcabeba (diff)
add ADC prescale flag
Diffstat (limited to 'kernel/kernel.h')
-rw-r--r--kernel/kernel.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/kernel/kernel.h b/kernel/kernel.h
index feab5b0..866ed5c 100644
--- a/kernel/kernel.h
+++ b/kernel/kernel.h
@@ -57,6 +57,26 @@
#warning "invalid PRESCALE value"
#endif
+#if (ADCPRESCALE == 1)
+#define ADC_FLAGS 0
+#elif (ADCPRESCALE == 2)
+#define ADC_FLAGS _BV(ADPS0)
+#elif (ADCPRESCALE == 4)
+#define ADC_FLAGS _BV(ADPS1)
+#elif (ADCPRESCALE == 8)
+#define ADC_FLAGS (_BV(ADPS1) | _BV(ADPS0))
+#elif (ADCPRESCALE == 16)
+#define ADC_FLAGS _BV(ADPS2)
+#elif (ADCPRESCALE == 32)
+#define ADC_FLAGS (_BV(ADPS2) | _BV(ADPS0))
+#elif (ADCPRESCALE == 64)
+#define ADC_FLAGS (_BV(ADPS2) | _BV(ADPS1))
+#elif (ADCPRESCALE == 128)
+#define ADC_FLAGS (_BV(ADPS2) | _BV(ADPS1) | _BV(ADPS0))
+#else
+#warning "invalid ADCPRESCALE value"
+#endif
+
#define SEC(T) ((uint32_t)((T) * (F_CPU / PRESCALE)))
#define MSEC(T) ((uint32_t)(T) * ((F_CPU / 1000) / PRESCALE))
#define USEC(T) ((uint32_t)(T) * ((F_CPU / 1000000) / PRESCALE))