summaryrefslogtreecommitdiff
path: root/n/avr/adc/adc.h
diff options
context:
space:
mode:
Diffstat (limited to 'n/avr/adc/adc.h')
-rw-r--r--n/avr/adc/adc.h24
1 files changed, 16 insertions, 8 deletions
diff --git a/n/avr/adc/adc.h b/n/avr/adc/adc.h
index 57df73a..05b6e19 100644
--- a/n/avr/adc/adc.h
+++ b/n/avr/adc/adc.h
@@ -24,6 +24,12 @@
* }}} */
#include <inttypes.h>
+#include <avr/io.h>
+
+/* Different name on ATmega8535. */
+#if defined (__AVR_ATmega8535__)
+#define ADCSR ADCSRA
+#endif
/* +AutoDec */
@@ -31,18 +37,20 @@
void
adc_init (void);
-/** choose and start mesure on adc line */
+/** Change channel. */
+void
+adc_mux (uint8_t c);
+
+/** Choose and start mesure on adc line. */
void
-adc_start (uint8_t d);
+adc_start (void);
+
+/* -AutoDec */
/** check on finish mesure */
-uint8_t
-adc_checkf (void);
+#define adc_checkf() bit_is_set (ADCSR, ADIF)
/** read mesure */
-uint16_t
-adc_read (void);
-
-/* -AutoDec */
+#define adc_read() ADCW
#endif /* adc_h */