summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2013-04-08 17:42:18 -0700
committerKeith Packard <keithp@keithp.com>2013-04-09 00:30:36 -0700
commit08eb1e3e1abb1aa4f5ea92b781a2ff8f480006c5 (patch)
treef512842c869e77bee53018e099a7e2dddf9e4245
parent6ba0df9b440b69bf5bc5f4e435b431adf303fee2 (diff)
altos: Monitor battery voltage on telebt
Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r--src/cc1111/ao_adc.c9
-rw-r--r--src/telebt-v1.0/Makefile1
-rw-r--r--src/telebt-v1.0/ao_pins.h14
-rw-r--r--src/telebt-v1.0/ao_telebt.c1
4 files changed, 24 insertions, 1 deletions
diff --git a/src/cc1111/ao_adc.c b/src/cc1111/ao_adc.c
index bfdc418a..ed76179b 100644
--- a/src/cc1111/ao_adc.c
+++ b/src/cc1111/ao_adc.c
@@ -153,6 +153,15 @@ ao_adc_isr(void) __interrupt 1
#define GOT_ADC
#endif /* TELEFIRE_V_0_1 */
+#ifdef TELEBT_V_1_0
+ a = (uint8_t __xdata *) (&ao_data_ring[ao_data_head].adc.batt);
+ a[0] = ADCL;
+ a[1] = ADCH;
+ if (0)
+ ;
+#define GOT_ADC
+#endif
+
#ifndef GOT_ADC
#error No known ADC configuration set
#endif
diff --git a/src/telebt-v1.0/Makefile b/src/telebt-v1.0/Makefile
index 1a3f1c80..911a8b09 100644
--- a/src/telebt-v1.0/Makefile
+++ b/src/telebt-v1.0/Makefile
@@ -35,6 +35,7 @@ CORE_SRC = \
CC1111_SRC = \
ao_dbg.c \
+ ao_adc.c \
ao_dma.c \
ao_led.c \
ao_packet.c \
diff --git a/src/telebt-v1.0/ao_pins.h b/src/telebt-v1.0/ao_pins.h
index b248521d..9e47f3b8 100644
--- a/src/telebt-v1.0/ao_pins.h
+++ b/src/telebt-v1.0/ao_pins.h
@@ -28,7 +28,6 @@
#define HAS_SERIAL_1_HW_FLOW 1
#define USE_SERIAL_1_STDIN 1
#define DELAY_SERIAL_1_STDIN 1
-#define HAS_ADC 0
#define HAS_DBG 1
#define HAS_EEPROM 0
#define HAS_LOG 0
@@ -50,6 +49,19 @@
#define HAS_MONITOR 1
#define LEGACY_MONITOR 0
+#define HAS_ADC 1
+#define AO_PAD_ADC_BATT 0
+#define AO_ADC_PINS (1 << AO_PAD_ADC_BATT)
+
+struct ao_adc {
+ int16_t batt;
+};
+
+#define AO_ADC_DUMP(p) \
+ printf ("tick: %5u batt %5d\n", \
+ (p)->tick, \
+ (p)->adc.batt)
+
#if DBG_ON_P1
#define DBG_CLOCK (1 << 4) /* mi0 */
diff --git a/src/telebt-v1.0/ao_telebt.c b/src/telebt-v1.0/ao_telebt.c
index 89434e7e..4a50a9d4 100644
--- a/src/telebt-v1.0/ao_telebt.c
+++ b/src/telebt-v1.0/ao_telebt.c
@@ -31,6 +31,7 @@ main(void)
ao_monitor_init();
ao_radio_init();
ao_packet_master_init();
+ ao_adc_init();
ao_btm_init();
#if HAS_DBG
ao_dbg_init();