Make the ICP3 rpm counter use in ao_adc_avr.c optional
Signed-off-by: Keith Packard <keithp@keithp.com>
*/
#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;
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);
#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
#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
distclean: clean
clean:
- rm -f $(OBJ)
+ rm -f $(OBJ) $(PROG) $(PROG).hex
rm -f ao_product.h
install: