From 4e3955a5b0ac125bd807920c467f959618449fbc Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Mon, 26 Aug 2013 17:17:47 -0700 Subject: altos/cc1111: Wake up non-ADC sensor code each timer tick Make sure the MS5607 code gets told to sample every tick Signed-off-by: Keith Packard --- src/cc1111/ao_timer.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/cc1111/ao_timer.c') diff --git a/src/cc1111/ao_timer.c b/src/cc1111/ao_timer.c index a64b5aba..54af9605 100644 --- a/src/cc1111/ao_timer.c +++ b/src/cc1111/ao_timer.c @@ -39,6 +39,9 @@ void ao_timer_isr(void) __interrupt 9 if (++ao_adc_count == ao_adc_interval) { ao_adc_count = 0; ao_adc_poll(); +#if (AO_DATA_ALL & ~(AO_DATA_ADC)) + ao_wakeup(DATA_TO_XDATA(&ao_adc_count)); +#endif } #endif } -- cgit v1.2.3 From de2e812b02a99a2f6d85f15a9600265931f6f6b0 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Sat, 7 Dec 2013 09:38:50 -0800 Subject: src/cc1111: Turn off RC osc after xtal is running There's no reason to keep running the RC oscillator after we switch to the crystal, so turn it off. Signed-off-by: Keith Packard --- src/cc1111/ao_timer.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/cc1111/ao_timer.c') diff --git a/src/cc1111/ao_timer.c b/src/cc1111/ao_timer.c index 54af9605..75cc4ce8 100644 --- a/src/cc1111/ao_timer.c +++ b/src/cc1111/ao_timer.c @@ -95,6 +95,13 @@ ao_clock_init(void) while (!(SLEEP & SLEEP_XOSC_STB)) ; + /* Power down the unused HFRC oscillator */ + SLEEP |= SLEEP_OSC_PD; + + /* Wait for HFRC to power down */ + while ((SLEEP & SLEEP_HFRC_STB) != 0) + ; + /* Crank up the timer tick and system clock speed */ CLKCON = ((CLKCON & ~(CLKCON_TICKSPD_MASK | CLKCON_CLKSPD_MASK)) | (CLKCON_TICKSPD_1 | CLKCON_CLKSPD_1)); -- cgit v1.2.3