diff options
| author | Robert Garbee <robert@gag.com> | 2012-07-19 11:40:20 -0600 | 
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2012-10-16 22:11:12 -0700 | 
| commit | 1747ab07dab6f4e977e0c3e83b57510cd668e369 (patch) | |
| tree | a4ea6808658f87afe489a8e11ba2c5b54516de6b /src | |
| parent | 440365bd17d804c2f574c35164612cf1682397d7 (diff) | |
telescience: steal last adc channel for icp3 most recent value
Make the ICP3 rpm counter use in ao_adc_avr.c optional
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src')
| -rw-r--r-- | src/avr/ao_adc_avr.c | 7 | ||||
| -rw-r--r-- | src/avr/ao_pins.h | 2 | ||||
| -rw-r--r-- | src/telepyro-v0.1/Makefile | 2 | 
3 files changed, 9 insertions, 2 deletions
diff --git a/src/avr/ao_adc_avr.c b/src/avr/ao_adc_avr.c index 3a262977..739a6d4a 100644 --- a/src/avr/ao_adc_avr.c +++ b/src/avr/ao_adc_avr.c @@ -16,6 +16,7 @@   */  #include "ao.h" +#include "ao_pwmin.h"  volatile __xdata struct ao_data	ao_data_ring[AO_DATA_RING];  volatile __data uint8_t		ao_data_head; @@ -93,9 +94,13 @@ ISR(ADC_vect)  	value = ADCL;  	value |= (ADCH << 8);  	ao_data_ring[ao_data_head].adc.adc[ao_adc_channel] = value; -	if (++ao_adc_channel < NUM_ADC) +	if (++ao_adc_channel < NUM_ADC - 1)  		ao_adc_start();  	else { +#if HAS_ICP3_COUNT +		/* steal last adc channel for pwm input */ +		ao_data_ring[ao_data_head].adc.adc[ao_adc_channel] = ao_icp3_count; +#endif  		ADCSRA = ADCSRA_INIT;  		ao_data_ring[ao_data_head].tick = ao_time();  		ao_data_head = ao_data_ring_next(ao_data_head); diff --git a/src/avr/ao_pins.h b/src/avr/ao_pins.h index bc423ff7..0f49db0b 100644 --- a/src/avr/ao_pins.h +++ b/src/avr/ao_pins.h @@ -47,6 +47,7 @@  	#define AVR_VCC_5V	       	0  	#define AVR_VCC_3V3		1  	#define AVR_CLOCK		8000000UL +	#define HAS_ICP3_COUNT		1  	#define SPI_CS_PORT		PORTE  	#define SPI_CS_DIR		DDRE @@ -81,6 +82,7 @@  	#define IS_COMPANION		1  	#define HAS_ORIENT		0  	#define ao_storage_pos_t	uint16_t +	#define HAS_ICP3_COUNT		0  	#define AVR_VCC_5V	       	0  	#define AVR_VCC_3V3		1 diff --git a/src/telepyro-v0.1/Makefile b/src/telepyro-v0.1/Makefile index 2ccd565f..6743ba66 100644 --- a/src/telepyro-v0.1/Makefile +++ b/src/telepyro-v0.1/Makefile @@ -96,7 +96,7 @@ ao_product.o: ao_product.c ao_product.h  distclean:	clean  clean: -	rm -f $(OBJ) +	rm -f $(OBJ) $(PROG) $(PROG).hex  	rm -f ao_product.h  install:  | 
